Book Image

Hands-On Enterprise Java Microservices with Eclipse MicroProfile

By : Cesar Saavedra, Heiko W. Rupp, Jeff Mesnil, Pavol Loffay, Antoine Sabot-Durand, Scott Stark
Book Image

Hands-On Enterprise Java Microservices with Eclipse MicroProfile

By: Cesar Saavedra, Heiko W. Rupp, Jeff Mesnil, Pavol Loffay, Antoine Sabot-Durand, Scott Stark

Overview of this book

Eclipse MicroProfile has gained momentum in the industry as a multi-vendor, interoperable, community-driven specification. It is a major disruptor that allows organizations with large investments in enterprise Java to move to microservices without spending a lot on retraining their workforce. This book is based on MicroProfile 2.2, however, it will guide you in running your applications in MicroProfile 3.0. You'll start by understanding why microservices are important in the digital economy and how MicroProfile addresses the need for enterprise Java microservices. You'll learn about the subprojects that make up a MicroProfile, its value proposition to organizations and developers, and its processes and governance. As you advance, the book takes you through the capabilities and code examples of MicroProfile’s subprojects - Config, Fault Tolerance, Health Check, JWT Propagation, Metrics, and OpenTracing. Finally, you’ll be guided in developing a conference application using Eclipse MicroProfile, and explore possible scenarios of what’s next in MicroProfile with Jakarta EE. By the end of this book, you'll have gained a clear understanding of Eclipse MicroProfile and its role in enterprise Java microservices.
Table of Contents (18 chapters)
Free Chapter
1
Section 1: MicroProfile in the Digital Economy
4
Section 2: MicroProfile's Current Capabilities
9
Section 3: MicroProfile Implementations and Roadmap
11
Section 4: A Working MicroProfile Example
13
Section 5: A Peek into the Future

Understanding health checks and how MicroProfile handles them

In cloud-native architectures, health checks are used to determine whether a computing node is alive and ready to perform work. The concept of readiness describes the state when containers start up or roll over (that is, redeployment). During this time, the cloud platform needs to ensure that no network traffic is routed to that instance before it is ready to perform work.

Liveness, on the other hand, describes the state of a running container; that is, can it still respond to requests? If either the liveness or readiness states are seen as invalid, the computing node will be discarded (terminated or shut down) and eventually replaced by another, healthy, instance.

Health checks are an essential contract with the orchestration framework and scheduler of the cloud platform. The check procedures are provided by the application...