
Hands-On Cloud-Native Microservices with Jakarta EE
Build scalable and reactive microservices with Docker, Kubernetes, and OpenShift
- 352 pages
- English
- ePUB (mobile friendly)
- Available on iOS & Android
Hands-On Cloud-Native Microservices with Jakarta EE
Build scalable and reactive microservices with Docker, Kubernetes, and OpenShift
About this book
Discover how cloud-native microservice architecture helps you to build dynamically scalable applications by using the most widely used and adopted runtime environments
Key Features
- Build robust cloud-native applications using a variety of tools
- Understand how to configure both Amazon Web Services (AWS) and Docker clouds for high availability
- Explore common design patterns used in building and deploying microservices architecture.
Book Description
Businesses today are evolving rapidly, and developers now face the challenge of building applications that are resilient, flexible, and native to the cloud. To achieve this, you'll need to be aware of the environment, tools, and resources that you're coding against.
The book will begin by introducing you to cloud-native architecture and simplifying the major concepts. You'll learn to build microservices in Jakarta EE using MicroProfile with Thorntail and Narayana LRA. You'll then delve into cloud-native application x-rays, understanding the MicroProfile specification and the implementation/testing of microservices. As you progress further, you'll focus on continuous integration and continuous delivery, in addition to learning how to dockerize your services. You'll also cover concepts and techniques relating to security, monitoring, and troubleshooting problems that might occur with applications after you've written them.
By the end of this book, you will be equipped with the skills you need to build highly resilient applications using cloud-native microservice architecture.
What you will learn
- Integrate reactive principles in MicroProfile microservices architecture
- Explore the 12-factors-app paradigm and its implications
- Get the best out of Java versions 8 and 9 to implement a microservice based on Thorntail
- Understand what OpenShift is and why it is so important for an elastic architecture
- Build a Linux container image using Docker and scale the application using Kubernetes
- Implement various patterns such as, Circuit Breaker and bulkheads
- Get to grips with the DevOps methodology using continuous integration (CI) and continuous deployment (CD)
Who this book is for
This book is for developers with basic knowledge of Java EE and HTTP-based application principles who want to learn how to build, test and scale Java EE microservices. No prior experience of writing microservices in Java EE is required.
Frequently asked questions
- Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
- Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Information
Building Microservices Using Thorntail
- Thorntail: The MicroProfile implementation that enables you to package your Java EE applications with just enough of the server runtime.
- Building a fantasy football application: I will create a set of microservice implementations based on different technologies in order to demonstrate the power of this new way to design enterprise applications.
- User interface microservices: I will analyze the micro frontend architecture and how to design the user experience with the microservices approach, and I will implement it with an example, based on Angular 6.
Thorntail

- Uber JAR: A self-contained, executable Java archive that contains your application, the fractions of Thorntail required to support it, a Maven repository of dependencies, and a small library that's needed to bootstrap it all.
- Hollow Uber JAR: A self-contained, executable Java archive that contains no application code, but only what you need to run it. Usually, it contains a subset of APIs, Jakarta EE, and MicroProfile, that your application will use. In this way, you exclude your EAR or WAR file (with the application code) from the executable Hollow JAR. Then, you can deploy your application artifact in the same style as traditional Jakarta EE app servers.
Fractions
- Directly enable a WildFly subsystem as Infinispan, which is needed to implement a data caching layer
- Integrate additional frameworks or services (for example, topology using Consul, JGroups, and OpenShift)
- Provide deployments of features like API documentation (for example, Swagger) or JMX metrics access (for example, Jolokia)
- Add API dependencies as Jakarta EE (for example, JAX-RS) or MicroProfile.io (for example, config, and health check)
- Alter deployment, introducing features as single-sign on for the authentication and authorization settings of your application (for example, Keycloak).
- Add the thorntail-maven-plugin to your pom.xml in a <plugin> block, with an <execution> specifying the package goal:
<plugins>
<plugin>
<groupId>io.thorntail</groupId>
<artifactId>thorntail-maven-plugin</artifactId>
<version>${version.thorntail}</version>
<executions>
<execution>
<id>package</id>
<goals>
<goal>package</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins> - Specify the API that you want to u...
Table of contents
- Title Page
- Copyright and Credits
- Contributors
- About Packt
- Preface
- Jakarta EE - the New Open Source Life of Java EE
- Microservices and Reactive Architecture
- Cloud-Native Applications
- Building Microservices Using Thorntail
- Eclipse MicroProfile and Transactions - Narayana LRA
- Linux Containers
- Platform as a Service
- Microservices Patterns
- Deployment
- Monitoring
- Building Microservices Using Spring Boot 2
- Building Microservices Using Vert.X
- Other Books You May Enjoy