Location visible to members
We have two distributed systems talks. In one, we cover Driud. In another, we'll examine how Erlang, the original actor system language, arrived at its best practices.
Smart Clients with Scala, Finagle, and Curator
Distributed systems have a number of classic concerns: peer discovery, availability, concurrency-safety, failover, data partitioning, and so on. Some services handle all this on the server side, but it is also possible to do some or all of these tasks on the client side. In many cases this separation can lead to a simpler and more flexible architecture. In this talk, we’ll discuss an example of a production system designed in this fashion: the Druid + Tranquility combination.
Druid is an open-source data store meant for real-time analytics, and Tranquility is a smart client for sending events to Druid as they occur. We will cover what the Druid ingestion servers are and are not responsible for, and how the client uses Scala, Finagle, and Curator to take care of the classic distributed system concerns with ease and high performance.
For more information about Druid, see http://druid.io/; for more information about Tranquility, see https://github.com/metamx/tranquility.
Gian is a backend software engineer at Metamarkets, where he is responsible for the infrastructure behind its data ingestion pipelines and is also a committer on the Druid project. He comes to Metamarkets from Yahoo! where he worked on its server deployment and configuration management platform. He holds a BS in Computer Science from Caltech.
An Introduction to Erlang
Erlang is known for its message-passing philosophy, its scalability, and the high uptime of Erlang-based systems. It is also known for having a weird syntax, and for being bundled with its own VM, all good sense to the contrary.
What is Erlang? What elements of the language and standard libraries make it so suitable for distributed systems? What have Erlang practitioners learned about concurrent and distributed systems from their 20+ years of experience with them?
This talk will provide an overview of the language, with an emphasis on its actor model of concurrency, and its support for distributed systems. No Erlang knowledge is necessary.
6:00pm -- doors open, food, drink, and networking, best view in the city
6:30-7:30pm -- Druid
7:30pm-8:30pm -- Erlang
8:30-9:00pm -- networking