Hands-On Cloud-Native Microservices with Jakarta EE: Build scalable and reactive microservices with Docker, Kubernetes, and OpenShift

Luigi Fugaro, Mauro Vocale


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.

Table of Contents

  1. Jakarta EE the new open source life of JEE
  2. Microservices and Reactive anatomy of the new software architecture
  3. Cloud native application and microservices
  4. Building Microservices Using Thorntail
  5. Eclipse MicroProfile and transactions Narayana LRA
  6. Linux containers
  7. Platform as a Service
  8. Patterns Introduction
  9. Deployments
  10. Monitoring
  11. APPENDIX A Build microservices using Spring Boot 2
  12. APPENDIX B Build microservice using Vert.X



- 使用各種工具建立強大的雲原生應用程式
- 了解如何配置Amazon Web Services (AWS)和Docker雲端以實現高可用性
- 探索在建立和部署微服務架構中常用的設計模式


本書將首先介紹雲原生架構並簡化其主要概念。您將學習使用Thorntail和Narayana LRA在Jakarta EE中建立微服務。然後,您將深入研究雲原生應用程式的x光,了解MicroProfile規範以及微服務的實施/測試。隨著進一步的進展,您將專注於持續整合和持續交付,並學習如何將服務容器化。您還將涵蓋與安全性、監控和疑難排解相關的概念和技術,這些問題可能在您編寫應用程式後出現。


- 在MicroProfile微服務架構中整合反應式原則
- 探索12因素應用程式範式及其影響
- 充分利用Java 8和9版本,基於Thorntail實現微服務
- 了解OpenShift及其對彈性架構的重要性
- 使用Docker建立Linux容器映像並使用Kubernetes擴展應用程式
- 實施各種模式,如斷路器和壁壘
- 掌握使用持續整合(CI)和持續部署(CD)的DevOps方法論

本書適合對Java EE和基於HTTP的應用程式原則有基本了解的開發人員,他們想要學習如何建立、測試和擴展Java EE微服務。不需要事先有在Java EE中編寫微服務的經驗。

1. Jakarta EE:JEE的新開源生活
2. 微服務和反應式:新軟體架構的解剖
3. 雲原生應用程式和微服務
4. 使用Thorntail建立微服務
5. Eclipse MicroProfile和Narayana LRA的交易
6. Linux容器
7. 平台即服務
8. 模式介紹
9. 部署
10. 監控
11. 附錄A:使用Spring Boot 2建立微服務
12. 附錄B:使用Vert.X建立微服務