David Strauss to speak at Cassandra SF
I can do a distributed DNS server that’s highly available, located in multiple data centers, and extremely resilient and has read/write access to the system, at all points on top of Cassandra, in very few lines of code. Name another system that has all those attributes and would be as simple to set up. This is very easy with Cassandra. The remarkable thing is that it’s not easy with almost any other system.
We asked David if he would present this as a use case at Cassandra SF, and he agreed. David’s presentation is titled: Highly available HTTP request routing and DNS using Cassandra. Here is the description of David’s talk:
Cassandra is mostly known for its I/O scalability, but its shared-nothing, highly available foundation is equally useful for applications requiring multi-datacenter distribution and constant uptime. It’s actually quite easy to build and manage HA services by punting the real HA problems to Cassandra’s battle-tested replication and sharding implementation. In this session, we’ll explore Pantheon’s edge routing layer, including:
* How application servers register their presence in Cassandra with a Twisted Python-based REST API. We’ll test updating routes using using cURL.
* Using Twisted Python to expose the Cassandra route mappings via DNS. This stack will provide us with a distributed, highly available UDP DNS cluster in about 30 lines of Python code back-ending to Cassandra. We’ll then read routes using the “dig” shell client.
* Using node.js as an HTTP reverse proxy to look up, cache (in local Redis), and use (with load balancing) routes discovered by reading the “A” records found in DNS. This part tops off the stack and allows us to distribute HTTP requests among application servers registered in Cassandra.
Since this is a case study, we’ll also consider how Pantheon manages the DNS/Cassandra layer to maintain full availability (read and write) during deployments and data center interlink failures.
David Strauss: Speaker Bio:
Pantheon Systems and Four Kitchens co-founder David Strauss has gained world-class Drupal, PHP, Python, and general web architecture experience from his work with the Wikimedia Foundation, Creative Commons, The Economist, Mansueto Ventures, Lifetime TV, NBC-Universal, and the Internet Archive.
David is well-known in the Drupal community as an expert in scalability and database optimization and is a member of the Drupal.org Infrastructure Team and a Permanent Member of the Drupal Association. Most recently, he launched Pantheon Systems, a Bay Area startup providing Drupal’s first self-service PaaS offering. David maintains Pantheon’s production logging, configuration, distributed text indexing, and request-routing infrastructure on top of two Apache Cassandra clusters.
Additional details and RSVP for Cassandra SF at Eventbrite: