A High-Speed Data Ingestion Microservice in Java Using MQTT, AMQP, and STOMP
Introduction
In a couple of previous blog posts, I’ve introduced Java developers to the Reactive Streams Ingestion (RSI) library.
Part 1 has introduced the Java Library for Reactive Stream Ingestion (RSI) and its API. Part 2 has explored another streaming scenario with RSI and the Oracle Autonomous Transaction Processing (ATP) Database — a fully automated database service optimized to run concurrent transactional workloads.
Besides, we’ve explored the use of Java Virtual Threads in combination with the ReactiveStreamsIngestion component. That’s interesting as the Virtual Threads feature is now released in JDK 21.
This blog post will combine both the RSI library, Virtual Threads and several messaging-related protocols such as AMQP, MQTT and STOMP along with ActiveMQ to create a high-speed data ingestion microservice in Java.
So without further ado, let’s get started!