
I created this course to show how MuleSoft's performance, parallel processing, segmenting data, error handling, and reusability enable fast, reliable data consumption across systems like ActiveMQ and Kafka.
Discover how a Confluent source uses a Kafka topic with Avro serialization and a Schema Registry, with MuleSoft processing for batch consumption, bulk inserts to MySQL, error handling, and reusability.
The instructor invites honest feedback on the course’s style, structure, and content, asking what you liked, what you’d change, and which topics you’d like in future Udemy courses.
Set up your environment by installing and configuring Apache Kafka, Confluent MySQL as the target database, and MuleSoft for API design, then populate Kafka topics with serialized messages.
Set up a self-managed Confluent cluster with Docker, create a Kafka topic and Avro schema in the schema registry, then install Arkk to visualize the topic and its schema.
Install MySQL components, set up the mule schema and target tables, create a login user Max the mule, and grant privileges to prepare the system for receiving Kafka topic data.
Demonstrates configuring Confluent Cloud for Mule and Kafka, including obtaining bootstrap server and schema registry URLs, creating API keys, and setting SASL TLS security in Anypoint Studio.
Implement a Kafka basic consumption flow with a batch message listener, using a two-consumer pool and manual commit, plus an endpoint to seek offsets per partition.
Learn to prepare and deserialize Avro payloads from a batch listener, convert to JSON with data weave, and merge message content with attributes for a system API.
Populate the target system by configuring a MySQL connection, using bulk inserts, and calling the system API via a Rest connector. Apply parallelism and payload segmentation to boost performance.
Distinguish regular and tombstone messages in the data consumption flow, publish tombstones for order cancellations, and update the order cancellations table via the system API.
Explore Mule's error handling for Kafka data consumption, including message filtering without a dead letter queue, correlation ID logging, all or nothing processing, and critical failure management for data consistency.
Populate the error log table for failed messages and enhance system API error handling with descriptive error descriptions, then deploy a put failed messages endpoint for logging and troubleshooting.
Manage deserialization errors by distinguishing reproducible from irreproducible issues, retrying reproducible ones, logging them to the target system's error log via its API, and filtering failed deserializations from payloads.
Robustly handles system API call errors by distinguishing irreproducible and reproducible errors, triggering retries or parallel single-message consumption, and logging failures for Mule data flows.
This lecture shows how to classify a critical error, stop the consumption flow, and use a process API endpoint to start consumption again after issues are resolved.
Extract message deserialization and payload preparation into Kafka Commons library, embed it in the process API, and replace steps with bidirectional flow references for Confluent Schema Registry handling and testing.
Extracts remaining Kafka consumption components into the library, including tombstone handling and deserialization failure logging. Implements batch and single message processing with dynamic flow references for final consumption testing.
Conclude the course by presenting the final implementation state and the downloadable resources to compare your progress, thank learners for their time and feedback, and invite them to future courses.
Are you looking for a way to consume data from Kafka topics quick, reliable and efficient?
Maybe you have already tried to use MuleSoft for consuming Kafka topic data and struggled with performance issues, unrecoverable errors or implementation efforts?
If so this course is for you.
You will learn about MuleSoft's capabilities that will allow you to
consume your data in a performant way by using parallelism and data segmentation at multiple levels
handle errors effectively by classifying an error based on several criteria such as reproducibility and triggering appropriate actions
speed up implementation by creating reusable components that are available across your apps
ensure data consistency in case of an incomplete or aborted consumption
After this course, you will have a better understanding of which tasks you should pay attention to when implementing a Kafka topic data integration solution and how MuleSoft can help you solving them.
This is a hands-on course that guides you in implementing and testing a complete sample application from scratch on your computer for consuming data from a Kafka topic and populating the data to a target system. This also includes the hosting and population of a sample Confluent Kafka topic with mocking data.
The capabilities you will learn about are also potentially useful for integrating data from other sources than a Kafka topic.