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

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Author(s): Luigi Fugaro, Mauro Vocale
Edition: 1
Publisher: Packt
Year: 2020

Language: English
Tags: microservices jakarta java

Cover
Title Page
Copyright and Credits
Contributors
About Packt
Table of Contents
Preface
Chapter 1: Jakarta EE - the New Open Source Life of Java EE
Open source
The Java programming language
Sun Microsystems
Oracle Corporation
Eclipse Foundation
OpenJDK 9 and 10 – key features for cloud environments
JDK 9
JDK 10
Java EE – MicroProfile.io – Jakarta EE
MicroProfile
Jakarta EE
Summary
Chapter 2: Microservices and Reactive Architecture
MicroProfile and the principles of MSA
What are microservices?
Benefits of microservices
Drawbacks of microservices
SOA versus MSA
Differences between MSAs and SOAs
From monolith to microservices
What is a monolith?
Migration path
Reactive systems and reactive programming
Reactive systems
Reactive programming
RxJava
Spring WebFlux and reactive stacks
Vert.x
Reactive Java EE monolith
Asynchronous processing
Messaging communications
Summary
Chapter 3: Cloud-Native Applications
Twelve-factor applications
Code base
Dependencies
Config
Backing services
Build, release, run
Processes
Port binding
Concurrency
Disposability
Development/production parity
Logs
Admin processes
Security
Microservices
Runtime environments
Spring Boot
Thorntail
Vert.x
Verticles
Event bus
Summary
Chapter 4: Building Microservices Using Thorntail
Thorntail
Fractions
Flexible configuration
Building a fantasy football application
The football player microservice
Database installation and configuration
Creating the source code
Entity class – JPA
RESTful web service – JAX-RS and CDI
The football manager microservice
Database installation and configuration
Creating the source code
Entity class – JPA
RESTful web service – JAX-RS and CDI
The football team microservice
Database installation and configuration
Creating the source code
The user interface microservice
Building a user interface
Summary
Chapter 5: Eclipse MicroProfile and Transactions - Narayana LRA
Transactions
ACID properties
Transaction managers
JTA
JTS
Extended architecture
Consensus protocol
2PC protocol
3PC protocol
The Paxos consensus
Transactions in microservices architecture
The saga pattern
Saga implementations
The Axon framework
Eventuate
Eventuate ES
Eventuate Tram
MicroProfile LRA
The football market microservice
LRA coordinator
Football-player-microservice-lra
Football-player-offer-microservice-lra
Football-player-market-microservice-lra
Initialize
The LRA business method
The complete phase
The compensate phase
Football_Player_Market_client
Limitations
Summary
Chapter 6: Linux Containers
Linux Containers
Cgroups
Namespaces
SELinux
Containers
Docker
football-player-microservice
football-player-ui
Kubernetes
Summary
Chapter 7: Platform as a Service
An introduction to OpenShift
OpenShift for developers
OpenShift for operations
OKD
Installing OKD
The OpenShift client
Managing a local OpenShift cluster
Templates
Networking
Services
Routes
Monitoring
Summary
Chapter 8: Microservices Patterns
Decomposition
How do you decompose an application?
By functionality
By integration
By resource consumption
Serverless 
API gateway
Bulkhead
Circuit breaker
Istio
Sidecar
Summary
Chapter 9: Deployment
Continuous integration and continuous delivery
What's the difference between CI, CD, and CD?
Blue-green deployment
Canary deployment
A/B testing deployment
Rolling deployment
Summary
Chapter 10: Monitoring
Prometheus
Installing Prometheus
Node-exporter
Installing Node-exporter
Grafana
Installing Grafana
Summary
Chapter 11: Building Microservices Using Spring Boot 2
Spring Boot
Maven settings
Gradle settings
Upgrading from an earlier version of Spring Boot
Building Spring Boot microservices
Project details
Database installation and configuration
Creating the source code
Entity class – JPA
Repository – JPA
The RESTful web service
Swagger documentation and OpenAPI
Chapter 12: Building Microservices Using Vert.X
Vert.x
Maven settings
Gradle settings
Building a football player microservice
Project details
Database installation and configuration
Creating the source code
The data access layer
The RESTful web service
Creating the test code
The football player microservice – Vert.x + RxJava
Other Books You May Enjoy
Index