Christopher Batey | Devoxx

Christopher Batey
Christopher Batey Twitter

From DataStax

Christopher Batey is a Software Engineer by trade and is currently employed by DataStax as a Technical Evangelist for Apache Cassandra, previously he was Senior Software Engineer at BSkyB where he spent his time designing and developing their next generation platform that backs Sky Go, Now TV etc. He is a keen blogger, tweeter and open source advocate.


methodevops Methodology & DevOps

Building fault tolerant microservices


Are you developing applications that communicate over a network? Of course you are! This talk will take you through all the ways you can build fault-tolerant applications and how, once you get your team in the mindset that everything will eventually fail, dealing with the failures gracefully is no more work than building fragile applications

The topics covered will be:

  • What to do when one of the dependencies fails to respond in time

  • When to use network level time outs vs application level timeouts

  • What to monitor and how to monitor it, e.g connection pools, thread pools, queue sizes, latency

  • How to test for when the network is slow or saturated

  • How to test for when traffic is lost in transit

  • How to train your stakeholders to expect failure and get them to agree to fallbacks meaning they can choose availability over other requirements

  • When to use automated circuit breakers vs manual kill switches

  • Tips, hints and tricks for doing all of the above in Java

The topics covered are especially relevant if your application has a lot of dependencies that it communicates with over a network i.e. microservices.

cloud Cloud & BigData

Apache Cassandra 101


Apache Cassandra is a the database of choice for people who need scalability and high availability without compromising performance. Cassandra's replication achieves fault tolerance and zero down time on commodity hardware.

However developers need to get out of a relational mindset to achieve all of this, so in this talk we’ll cover:

  • Overview of Cassandra including how it replicates to achieve zero downtime

  • Core use cases that Cassandra fits, hopefully leaving attendees with a sense of whether Cassandra fits their use case

  • Interacting with Cassandra from Java with examples that use the raw driver and mapping APIs

  • Introduction to more complicated topics such as light weight transactions, branches and load balancing

My goal is to have attendees gain an understanding of when Cassandra is the right fit and how it achieves scalability and tolerance to hardware failure all while showing how the modern drivers make it easy to use from Java.