The Developer Velocity Podcast

Nočnica

Every team needs it but no team knows how to get more of it. Without it, features get shipped late, tech debt increases, and people aren't happy.

Developer Velocity, the speed at which new features get shipped.

Join your host Nočnica as we talk about how to give developers better tools to test sooner, build faster, and spend less time waiting for a build to run.

read less
ArtsArts

Episodes

A better way to test Apache Kafka with Arjun Iyer
Apr 25 2023
A better way to test Apache Kafka with Arjun Iyer
Hey it's episode 1! Developer Velocity is about how to enable your product teams to ship, test, and work faster. Today we're talking with Arjun Iyer about testing with Apache Kafka.Asynchronous architectures are common in cloud native applications as it decouples services and improves the scalability and reliability of the system. A message queue forms the basis of an asynchronous architecture and you can choose one from a myriad of options ranging from open source tools like Kafka and RabbitMQ to managed systems like Google Cloud Pub/Sub and AWS SQS. Among the various options available for a message queue, Apache Kafka is a popular choice in cloud native applications due to its high throughput and low latency capabilities. Kafka's distributed architecture, fault-tolerance, and scalability make it an ideal choice for building highly resilient and responsive asynchronous architectures.Scaling environments that use asynchronous systems like Kafka across multiple tenants can present unique challenges. There are several approaches to address them, each with its own advantages and trade-offs in terms of resource isolation and costs. One of the most cost effective methods is to share a common baseline environment across tenants. This approach allows for scalable, isolated testing with minimal operational overhead and eliminates the issue of outdated environments. By utilizing OpenTelemetry to propagate headers through Kafka and by dynamically routing messages, you can achieve efficient scaling of Kafka environments with high levels of isolation and flexibility. It's worth noting that this approach can be easily extended to other message queues, making it a versatile solution for asynchronous applications.Run with the support of Signadot. Check out the Signadot blog to learn more.Find Nica @serverless_mom