<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Kafka on AI VOID</title><link>https://ai-blog.noorshomelab.dev/tags/kafka/</link><description>Recent content in Kafka on AI VOID</description><generator>Hugo</generator><language>en</language><lastBuildDate>Fri, 20 Mar 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://ai-blog.noorshomelab.dev/tags/kafka/index.xml" rel="self" type="application/rss+xml"/><item><title>Simulating Real-time Supply Chain Events with Kafka</title><link>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence-2/02-kafka-event-simulation/</link><pubDate>Sat, 20 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence-2/02-kafka-event-simulation/</guid><description>&lt;h2 id="chapter-2-simulating-real-time-supply-chain-events-with-kafka"&gt;Chapter 2: Simulating Real-time Supply Chain Events with Kafka&lt;/h2&gt;
&lt;p&gt;Welcome to Chapter 2 of our comprehensive guide! In this chapter, we&amp;rsquo;re laying the foundation for our real-time supply chain analytics platform by simulating the very events that drive it. We will build a robust Kafka producer application that generates realistic supply chain events, such as shipment updates, inventory changes, and order status modifications, and publishes them to a Kafka topic.&lt;/p&gt;</description></item><item><title>Simulating Real-time Supply Chain Events with Kafka</title><link>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence/02-kafka-event-simulation/</link><pubDate>Sat, 20 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence/02-kafka-event-simulation/</guid><description>&lt;h2 id="chapter-2-simulating-real-time-supply-chain-events-with-kafka"&gt;Chapter 2: Simulating Real-time Supply Chain Events with Kafka&lt;/h2&gt;
&lt;p&gt;Welcome to Chapter 2 of our comprehensive guide! In this chapter, we&amp;rsquo;re laying the foundation for our real-time supply chain analytics platform by simulating the very events that drive it. We will build a robust Kafka producer application that generates realistic supply chain events, such as shipment updates, inventory changes, and order status modifications, and publishes them to a Kafka topic.&lt;/p&gt;</description></item><item><title>Ingesting Raw Supply Chain Events with DLT Bronze Layer</title><link>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence-2/03-dlt-bronze-ingestion/</link><pubDate>Sat, 20 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence-2/03-dlt-bronze-ingestion/</guid><description>&lt;h2 id="ingesting-raw-supply-chain-events-with-dlt-bronze-layer"&gt;Ingesting Raw Supply Chain Events with DLT Bronze Layer&lt;/h2&gt;
&lt;h3 id="chapter-introduction"&gt;Chapter Introduction&lt;/h3&gt;
&lt;p&gt;In this chapter, we embark on the crucial first step of our real-time supply chain analytics journey: ingesting raw supply chain events into our data lakehouse. We will leverage Databricks Delta Live Tables (DLT) to build a robust, fault-tolerant, and scalable pipeline that continuously reads event data from Apache Kafka and lands it into a &amp;ldquo;Bronze&amp;rdquo; Delta table. The Bronze layer serves as the raw, immutable historical record of all ingested data, preserving the original state of events as they arrive.&lt;/p&gt;</description></item><item><title>Ingesting Raw Supply Chain Events with DLT Bronze Layer</title><link>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence/03-dlt-bronze-ingestion/</link><pubDate>Sat, 20 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence/03-dlt-bronze-ingestion/</guid><description>&lt;h2 id="ingesting-raw-supply-chain-events-with-dlt-bronze-layer"&gt;Ingesting Raw Supply Chain Events with DLT Bronze Layer&lt;/h2&gt;
&lt;h3 id="chapter-introduction"&gt;Chapter Introduction&lt;/h3&gt;
&lt;p&gt;In this chapter, we embark on the crucial first step of our real-time supply chain analytics journey: ingesting raw supply chain events into our data lakehouse. We will leverage Databricks Delta Live Tables (DLT) to build a robust, fault-tolerant, and scalable pipeline that continuously reads event data from Apache Kafka and lands it into a &amp;ldquo;Bronze&amp;rdquo; Delta table. The Bronze layer serves as the raw, immutable historical record of all ingested data, preserving the original state of events as they arrive.&lt;/p&gt;</description></item><item><title>Event-Driven Architectures: Reacting to Data in AI Systems</title><link>https://ai-blog.noorshomelab.dev/ai-system-design-2026-guide/event-driven-architectures-ai/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/ai-system-design-2026-guide/event-driven-architectures-ai/</guid><description>&lt;h2 id="introduction-the-pulse-of-real-time-ai"&gt;Introduction: The Pulse of Real-time AI&lt;/h2&gt;
&lt;p&gt;Welcome back, future AI architects! In our previous chapters, we explored the power of modularity with microservices and the art of coordinating complex tasks with orchestration. We learned how to break down monolithic AI systems into manageable, independent pieces and how to guide those pieces through their workflow.&lt;/p&gt;
&lt;p&gt;But what happens when your AI system needs to react &lt;em&gt;instantly&lt;/em&gt; to new information? What if you have a continuous stream of data, and your services need to process it without waiting for explicit requests or tightly coupled calls? How do you ensure that your recommendation engine updates in real-time as a user browses, or that your fraud detection system flags suspicious transactions as they happen?&lt;/p&gt;</description></item><item><title>6. Message Brokers and Service Interactions: Kafka and Web Services</title><link>https://ai-blog.noorshomelab.dev/testcontainers-mastery-2026/06-message-brokers-kafka-web-services/</link><pubDate>Sat, 14 Feb 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/testcontainers-mastery-2026/06-message-brokers-kafka-web-services/</guid><description>&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Welcome back, intrepid tester! In the previous chapters, you mastered the art of using Testcontainers to bring real databases into your tests. That was a huge step up from in-memory fakes, but what about the broader landscape of modern applications? Many microservices don&amp;rsquo;t just talk to databases; they communicate through message brokers, call other APIs, and integrate with external services.&lt;/p&gt;
&lt;p&gt;This chapter is your passport to confidently testing those complex interactions. We&amp;rsquo;re going to tackle two crucial areas:&lt;/p&gt;</description></item><item><title>Streaming Logistics Cost Monitoring with Spark Structured Streaming</title><link>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence-2/08-structured-streaming-cost-monitoring/</link><pubDate>Sat, 20 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence-2/08-structured-streaming-cost-monitoring/</guid><description>&lt;h2 id="streaming-logistics-cost-monitoring-with-spark-structured-streaming"&gt;Streaming Logistics Cost Monitoring with Spark Structured Streaming&lt;/h2&gt;
&lt;h3 id="1-chapter-introduction"&gt;1. Chapter Introduction&lt;/h3&gt;
&lt;p&gt;In modern supply chains, real-time visibility into logistics costs is paramount for effective decision-making, cost optimization, and competitive advantage. This chapter guides you through building a robust, real-time logistics cost monitoring pipeline using Apache Spark Structured Streaming on Databricks. We will ingest streaming logistics events from Kafka, process them to calculate various cost components, and enrich them with previously generated tariff data and dynamic fuel prices.&lt;/p&gt;</description></item><item><title>Streaming Logistics Cost Monitoring with Spark Structured Streaming</title><link>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence/08-structured-streaming-cost-monitoring/</link><pubDate>Sat, 20 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence/08-structured-streaming-cost-monitoring/</guid><description>&lt;h2 id="streaming-logistics-cost-monitoring-with-spark-structured-streaming"&gt;Streaming Logistics Cost Monitoring with Spark Structured Streaming&lt;/h2&gt;
&lt;h3 id="1-chapter-introduction"&gt;1. Chapter Introduction&lt;/h3&gt;
&lt;p&gt;In modern supply chains, real-time visibility into logistics costs is paramount for effective decision-making, cost optimization, and competitive advantage. This chapter guides you through building a robust, real-time logistics cost monitoring pipeline using Apache Spark Structured Streaming on Databricks. We will ingest streaming logistics events from Kafka, process them to calculate various cost components, and enrich them with previously generated tariff data and dynamic fuel prices.&lt;/p&gt;</description></item><item><title>14. Project: Microservice Integration with Java (Spring Boot)</title><link>https://ai-blog.noorshomelab.dev/testcontainers-mastery-2026/14-project-microservice-java/</link><pubDate>Sat, 14 Feb 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/testcontainers-mastery-2026/14-project-microservice-java/</guid><description>&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Welcome to Chapter 14! In this practical project, we&amp;rsquo;re going to roll up our sleeves and apply everything we&amp;rsquo;ve learned about Testcontainers to a real-world scenario: building and testing a Java Spring Boot microservice.&lt;/p&gt;
&lt;p&gt;Microservices often rely on external dependencies like databases, message brokers, and other services. Testing these interactions is crucial but can be challenging. We want our tests to be realistic, fast, and isolated. This is precisely where Testcontainers shines!&lt;/p&gt;</description></item><item><title>Production Deployment, Monitoring, and Cost Optimization</title><link>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence-2/15-production-monitoring-optimization/</link><pubDate>Sat, 20 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence-2/15-production-monitoring-optimization/</guid><description>&lt;h2 id="chapter-15-production-deployment-monitoring-and-cost-optimization"&gt;Chapter 15: Production Deployment, Monitoring, and Cost Optimization&lt;/h2&gt;
&lt;p&gt;Welcome to the final chapter of our comprehensive guide! Throughout this project, we&amp;rsquo;ve meticulously built a sophisticated real-time supply chain analytics platform on Databricks, leveraging Delta Live Tables, Spark Structured Streaming, Kafka, and the Lakehouse architecture. We&amp;rsquo;ve gone from raw data ingestion to advanced analytics, including HS Code tariff impact analysis, logistics cost monitoring, and anomaly detection. Now, it&amp;rsquo;s time to transition our development efforts into a robust, observable, and cost-effective production environment.&lt;/p&gt;</description></item><item><title>Production Deployment, Monitoring, and Cost Optimization</title><link>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence/15-production-monitoring-optimization/</link><pubDate>Sat, 20 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/realtime-supply-chain-intelligence/15-production-monitoring-optimization/</guid><description>&lt;h2 id="chapter-15-production-deployment-monitoring-and-cost-optimization"&gt;Chapter 15: Production Deployment, Monitoring, and Cost Optimization&lt;/h2&gt;
&lt;p&gt;Welcome to the final chapter of our comprehensive guide! Throughout this project, we&amp;rsquo;ve meticulously built a sophisticated real-time supply chain analytics platform on Databricks, leveraging Delta Live Tables, Spark Structured Streaming, Kafka, and the Lakehouse architecture. We&amp;rsquo;ve gone from raw data ingestion to advanced analytics, including HS Code tariff impact analysis, logistics cost monitoring, and anomaly detection. Now, it&amp;rsquo;s time to transition our development efforts into a robust, observable, and cost-effective production environment.&lt;/p&gt;</description></item><item><title>16. Project: Data Pipeline Testing with Python (Kafka &amp;amp; DB)</title><link>https://ai-blog.noorshomelab.dev/testcontainers-mastery-2026/16-project-data-pipeline-python/</link><pubDate>Sat, 14 Feb 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/testcontainers-mastery-2026/16-project-data-pipeline-python/</guid><description>&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Welcome back, intrepid tester! So far, we&amp;rsquo;ve explored the foundational concepts of Testcontainers and used them to test single-service applications in various languages. But what about testing more complex systems, like the beating heart of many modern applications: a data pipeline?&lt;/p&gt;
&lt;p&gt;In this chapter, we&amp;rsquo;re going to tackle a real-world scenario: building and testing a simplified data pipeline in Python. This pipeline will involve two crucial external services: Apache Kafka for message queuing and PostgreSQL for data storage. Testing such a system traditionally is a headache, requiring manual setup of these services, which leads to flaky, slow, and inconsistent tests. Thankfully, Testcontainers comes to our rescue! We&amp;rsquo;ll use &lt;code&gt;testcontainers-python&lt;/code&gt; to spin up fresh, isolated instances of both Kafka and PostgreSQL for every test run, ensuring your tests are reliable and fast.&lt;/p&gt;</description></item><item><title>4. Core API: Generic Containers and Specific Modules</title><link>https://ai-blog.noorshomelab.dev/testcontainers-mastery-2026/04-core-api-generic-specific-modules/</link><pubDate>Sat, 14 Feb 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/testcontainers-mastery-2026/04-core-api-generic-specific-modules/</guid><description>&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Welcome back, intrepid developer! In our previous chapters, we learned &lt;em&gt;why&lt;/em&gt; Testcontainers is a game-changer for robust, reliable integration and end-to-end testing. We understood how it leverages Docker to provide disposable, real-world dependencies without the headaches of managing complex test environments or falling into the trap of unreliable mocks.&lt;/p&gt;
&lt;p&gt;Now, it&amp;rsquo;s time to roll up our sleeves and explore the &lt;em&gt;how&lt;/em&gt;. This chapter dives deep into the heart of Testcontainers: its Core API. We&amp;rsquo;ll uncover two powerful ways to interact with Docker containers for your tests: using &lt;code&gt;GenericContainer&lt;/code&gt; for ultimate flexibility with any Docker image, and leveraging specialized &amp;ldquo;Modules&amp;rdquo; that offer convenient, idiomatic APIs for common services like databases and message brokers. By the end, you&amp;rsquo;ll be confidently spinning up and managing containerized services across Java, JavaScript, and Python.&lt;/p&gt;</description></item><item><title>Testcontainers Practical Field Guide</title><link>https://ai-blog.noorshomelab.dev/guides/mastering-testcontainers-guide/</link><pubDate>Sat, 14 Feb 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/guides/mastering-testcontainers-guide/</guid><description>&lt;h2 id="welcome-to-the-testcontainers-mastery-guide"&gt;Welcome to the Testcontainers Mastery Guide!&lt;/h2&gt;
&lt;p&gt;Are you tired of flaky integration tests? Do you spend endless hours setting up complex test environments that never quite match production? Do in-memory fakes and mocks leave you wondering if your application will truly work when deployed? If you answered &amp;ldquo;yes&amp;rdquo; to any of these, then you&amp;rsquo;re in the right place!&lt;/p&gt;
&lt;p&gt;This comprehensive guide will take you on an exciting journey from an absolute beginner to an advanced practitioner of Testcontainers. We&amp;rsquo;ll unlock the power of real, disposable containerized dependencies for your tests, ensuring reliability, speed, and confidence in your software.&lt;/p&gt;</description></item></channel></rss>