Oct 28, 2016

Simplifying Distributed Systems Using Apache Kafka

With the rising popularity of micro service architectures and typical scaling patterns used at enterprises, distributed systems are becoming more common and complex. What was once a simple web server connected to a database now can entail multiple databases, caches and integrations to other services/systems. By using Apache Kafka one can take much of the integration complexity out of the system, reduce coupling between the different components, easily expand functionality without disruption and scale horizontally.

This presentation will cover patterns and concepts that can be used to achieve all of the above. There will be a quick overview of how Apache Kafka works, it’s differences from other messaging brokers and why that’s important. I’ll speak about the good, the bad and what was missed during my experience working with large distributed systems. Finally I’ll briefly mention other technologies that work well with Kafka.

Original slides here.

About the Author

Object Partners profile.
Leave a Reply

Your email address will not be published. Required fields are marked *

Related Blog Posts
Using Conftest to Validate Configuration Files
Conftest is a utility within the Open Policy Agent ecosystem that helps simplify writing validation tests against configuration files. In a previous blog post, I wrote about using the Open Policy Agent utility directly to […]
SwiftGen with Image & Color Asset Catalogs
You might remember back in 2015 when iOS 9 was introduced, and we were finally given a way to manage all of our assets in one place with Asset Catalogs. A few years later, support […]
Tracking Original URL Through Authentication
If you read my other post about refreshing AWS tokens, then you probably have a use case for keeping track of the original requested resource while the user goes through authentication so you can route […]
Using Spring Beans in a Kafka Streams ExceptionHandler
There are many things to know before diving into Kafka Streams. If you haven’t already, check out these 5 things as a starting point. Bullet 2 mentions designing for exceptions. Ironically, this seems to be […]