Apache Kafka and Kubernetes on OpenShift

Eclipse MicroProfile Reactive Messaging provides an easy way to asynchronously send, receive, and process messages that are received as continuous streams of events. During this workshop, you learn how to build reactive microservices that can send requests to other microservices, and asynchronously receive and process the responses. You use an external messaging system to handle the asynchronous messages that are sent and received between the microservices as streams of events. MicroProfile Reactive Messaging makes it easy to write and configure your application to send, receive, and process the events efficiently.

Asynchronous communication between microservices can be used to build reactive and responsive applications. By decoupling the requests sent by a microservice from the responses that it receives, the microservice is not blocked from performing other tasks while waiting for the requested data to become available.

Imagine asynchronous communication as a restaurant. A waiter might come to your table and take your order. While you are waiting for your food to be prepared, that waiter serves other tables and takes their orders too. When your food is ready, the waiter brings your food to the table and then continues to serve the other tables. If the waiter were to operate synchronously, they must take your order and then wait until they deliver your food before serving any other tables.

With microservices, a request call from a REST client to another microservice might be time-consuming because the network is slow or the other service is overwhelmed with requests and can’t respond quickly. But in an asynchronous system, the microservice sends a request to another microservice, continues to send other calls, and receives and processes other responses until it receives a response to the original request.

Watch the workshop replay to learn how to:

  • Build reactive Java microservices using the MicroProfile Reactive Messaging API and Open Liberty
  • Run reactive microservices in containers
  • Consume Apache Kafka messaging in IBM Cloud from containers
  • Run containers with Kubernetes on Red Hat OpenShift

Learn more about how to build smart on Kubernetes.