In recent years, the transition from monolithic to cloud-native architecture has brought new challenges, particularly in the area of communication between microservices. This has created a need for middleware to route messages and event streaming platforms that enable smooth, scalable, and reliable communication between services, as well as real-time data processing.
In this master's thesis, we explored the NATS messaging technology, which, along with the JetStream component, represents a platform for event streaming. We compared it with some other representatives of such platforms and integrated it into the KumuluzEE Java framework for developing microservices. We developed two libraries, KumuluzEE NATS Core and KumuluzEE NATS JetStream, which allow for the efficient and standardized use of NATS in cloud-native applications written in Java. We tested the integration with a sample application Smart Village, which simulates event-driven energy management, and demonstrated the stability, efficiency, and reliability of the developed libraries in a real-world scenario.
|