Contrasting Kafka with Akka

Contrasting Kafka with Akka

My software architecture consulting gigs take me places ranging from startups to more established organisations, having one thing in common: they are looking to solve a problem using a distributed systems approach. Organisations are quick to embrace the benefits of microservices and event-driven architecture—scalability, supporting business change, polyglot culture, deployment flexibility—values that organisations are increasingly looking to adopt.

These architectural paradigms aren’t without their drawbacks too, however. Distributed systems are trickier to debug. Consistency and distributed state don’t play well. Concurrency is a lot more difficult to muster. To the latter, the use of actor systems and related forms of command serialization is becoming more prominent in a contemporary architecture landscape.

Perhaps unsurprisingly then, I often get inundated with questions about Kafka and Akka—how the two relate and whether we should be using one over another—almost as if to say they were in some way interchangeable. I felt it’s time to dispel some misconceptions and objectively delineate their commonalities and differences.

Read the rest of the article on Medium.

要查看或添加评论,请登录

Emil Koutanov的更多文章

  • The Design of an Event Store

    The Design of an Event Store

    The topics “event-driven architecture” “event stream processing” and “event sourcing” have enjoyed quite a buzz as of…

    1 条评论
  • Combining strict order with massive parallelism using Kafka

    Combining strict order with massive parallelism using Kafka

    Having been involved in several large-scale Kafka projects for different clients across a broad range of industries, I…

  • Logging on the Cheap

    Logging on the Cheap

    To log or not to log? Writing new code is a relatively small part of application development. A much larger part of a…

    1 条评论
  • Contrasting NATS with Apache Kafka

    Contrasting NATS with Apache Kafka

    TL;DR Kafka is an Event Streaming Platform, while NATS is a closer to a conventional Message Queue. Kafka is optimised…

  • Apache Kafka in a Nutshell

    Apache Kafka in a Nutshell

    So, you’ve heard of this Kafka thing that’s popping up all over the shop. From green-sprout startups to greedy…

    1 条评论
  • Why Kafka Is So Fast

    Why Kafka Is So Fast

    Discover the deliberate design decisions that have made Kafka the performance powerhouse it is today. The last few…

    2 条评论
  • Getting Started With Istio

    Getting Started With Istio

    Understanding what a service mesh is and how it can be used effectively in a microservices architecture. The last few…

  • Kafka Gotchas

    Kafka Gotchas

    I've assisted several large clients in building a microservices-style architecture using Kafka as a messaging backbone,…

  • Introduction to Event Streaming with Kafka and Kafdrop

    Introduction to Event Streaming with Kafka and Kafdrop

    Event sourcing, eventual consistency, microservices, CQRS..

社区洞察

其他会员也浏览了