Apache Zookeeper and Apache Curator Meet the Dining Philosophers

Paul Brebner

English Session 2022-07-29 15:30 GMT+8  #middleware

A ZooKeeper walks into a pub … (actually an Outback pub), and ends up helping some Philosophers solve their fork resource contention problem. This talk is an introduction to Apache Zookeeper and Apache Curator to solve a new variant of the classic computer science Dining Philosophers problem. We’ll introduce Zookeeper (a mature and widely-used de facto technology for distributed systems coordination) and the Dining Philosophers problem, and explore how we used Apache Curator (a high-level Java client for Zookeeper) to implement the solution and show how it works. We tested the application on Instaclustr’s new managed Apache Zookeper cloud service, so we can also reveal performance results using a single Zookeeper server vs. an Ensemble. Finally, we take a look at the progress to remove Zookeeper from Apache Kafka. Even though Apache Kafka may be leaving the Zoo(keeper) soon, there are still lots of distributed applications in need of some coordination help. and it’s worth learning about Apache Zookeeper and Curator.

Speakers:


Paul Brebner: Instaclustr, Chief Technology Evangelist, Paul is the Technology Evangelist at Instaclustr. For the past five years, he has been learning new scalable technologies, solving realistic problems, building applications, and blogging and talking about Apache Cassandra, Apache Spark, Apache Kafka, Redis, Elasticsearch, PostgreSQL, Cadence, and many more open source technologies.

Since learning to program on a VAX 11/780, Paul has extensive R&D, teaching, and consulting experience in distributed systems, technology innovation, software architecture and engineering, software performance and scalability, grid and cloud computing, and data analytics and machine learning.

Paul has also worked at Waikato University, UNSW, CSIRO, UCL (UK), NICTA/ANU, and several tech start-ups. Paul has an MSc in Machine Learning and a BSc (Computer Science and Philosophy).