In a cloud infrastructure environment, where a running application in a microservice architecture may be composed of multiple running nodes, it is important for the underlying infrastructure processes to query and know the health of a node in order to take an appropriate action, e.g. passivate, terminate, replace the microservice. Likewise, microservices need to respond adequately in case of execution faults so that these faults do not bring down the service. Eclipse MicroProfile health check and fault tolerance address these two concerns. In contrast to health checks, which are primarily targeted at a quick yes/no response to the question “Is my application still running ok?”, metrics gather essential system parameters, which can be monitored to ensure the reliable operation of microservices. In addition, authentication and authorization are concerns necessary for the secured execution of microservices. Eclipse MicroProfile metrics and JWT propagation respectively address these last two.

Benefits of MicroProfile 1.2 are:

Additional features offering more functionality for implementing enterprise Java microservices.

MicroProfile health check provides the ability for infrastructure systems to monitor the health and act upon it resulting in a more robust and available application.

MicroProfile fault tolerance adds constructs such as bulkhead, circuit breaker, fallback, retry policy and timeout to microservices resulting in a more available and resilient application.

MicroProfile metrics help to determine the health of an application, serve to pinpoint issues, provide long term trend data for capacity planning and pro-active discovery of issues (e.g. disk usage growing without bounds). Metrics can also help scheduling systems decide when to scale the application to run on more or fewer instances.

MicroProfile JWT Propagation specifies MicroProfile-JWT tokens and how to map them to Java EE and non-Java EE containers resulting in more secure microservices using existing infrastructure environments.

Interoperability across different MicroProfile implementations provides users the freedom to select one or combine many MicroProfile implementations in an application.

A thorough set of artifacts for each API, including a test compatibility kit (TCK), Javadoc, PDF document for download, API Maven artifact coordinates, Git tag, and downloads (spec and source code).

Eclipse MicroProfile delivers additional value with each release and to successfully evolve with the dynamic help of all its community members. Future releases are expected to update existing APIs and add new ones. MicroProfile 1.3 is scheduled to deliver:

And, MicroProfile 2.0 is scheduled to deliver:

Red Hat delivers Eclipse MicroProfile in Red Hat OpenShift Application Runtimes, our multi-cloud, multi-tech application development and modernization platform, which provides a highly productive and prescriptive developer experience for creating new cloud-native apps and cloud-enable existing applications using microservices, containerization, and DevOps. Red Hat implements Eclipse MicroProfile in WildFly Swarm, which is one of the runtimes included in Red Hat OpenShift Application Runtimes.