Cover
Copyright
Table of Contents
Chapter 1. Introduction
Preparing Your Environment
Chapter 2. Understanding Reactive Microservices and Vert.x
Reactive Programming
Reactive Systems
Reactive Microservices
What About Vert.x ?
Asynchronous Development Model
Verticles—the Building Blocks
From Callbacks to Observables
Let’s Start Coding!
Project Creation
Write Your First Verticle
Using RxJava
Packaging Your Application as a Fat Jar
Logging, Monitoring, and Other Production Elements
Summary
Chapter 3. Building Reactive Microservices
First Microservices
Implementing HTTP Microservices
Getting Started
The Verticle
HTTP Microservice
Using Routes and Parameters
Producing JSON
Packaging and Running
Consuming HTTP Microservices
Project Creation
Calling the Service More Than Once
Are These Microservices Reactive Microservices?
The Vert.x Event Bus—A Messaging Backbone
Message-Based Microservices
Project Creation
Writing the Message-Driven Verticle
Initiating Message-Based Interactions
Are We Reactive Now?
Elasticity
Resilience
Summary
Chapter 4. Building Reactive Microservice Systems
Service Discovery
Client- and Server-Side Service Discovery
Vert.x Service Discovery
Stability and Resilience Patterns
Managing Failures in Reactive Microservices
Using Timeouts
Circuit Breakers
Health Checks and Failovers
Summary
Chapter 5. Deploying Reactive Microservices in OpenShift
What Is OpenShift?
Build Configuration
Deployment Configurations
Pods
Services and Routes
Installing OpenShift on Your Machine
Deploying a Microservice in OpenShift
Service Discovery
Scale Up and Down
Health Check and Failover
Using a Circuit Breaker
But Wait, Are We Reactive?
Summary
Chapter 6. Conclusion
What Have We Learned?
Microservices Aren’t Easy
The Evolution of the Microservice Paradigm
Vert.x Versatility
About the Author