Home Page Icon
Home Page
Table of Contents for
Contributors
Close
Contributors
by Francesco Marchioni
Hands-On Cloud-Native Applications with Java and Quarkus
Title Page
Copyright and Credits
Hands-On Cloud-Native Applications with Java and Quarkus
Dedication
About Packt
Why subscribe?
Foreword
Contributors
About the author
About the reviewers
Packt is searching for authors like you
Preface
Who this book is for
What this book covers
To get the most out of this book
Download the example code files
Download the color images
Code in Action
Conventions used
Get in touch
Reviews
Section 1: Getting Started with Quarkus
Introduction to Quarkus Core Concepts
Technical requirements
From the big data hype to Kubernetes
The Kubernetes architecture in a nutshell
Benefits of using Kubernetes
From Java EE to MicroProfile
The Twelve-Factor App methodology
The MicroProfile initiative
Quarkus – a Kubernetes-native Java framework
Native code execution
Container first
Unifying the imperative and Reactive Programming models
Coding that sparks joy
Best-of-breed Java libraries and standards
Quarkus architecture
Getting started with GraalVM
Installing GraalVM
Running a Java application with GraalVM
Building native images
Installing a development environment
A brief overview of IntelliJ IDEA
Installing IntelliJ Plugin for Quarkus
Summary
Developing Your First Application with Quarkus
Technical requirements
Getting started with the Quarkus Maven plugin
Launching the Quarkus Maven plugin
Running the application
Using the Maven plugin to generate a Gradle project
Kick-starting applications using the Quarkus online application
Testing live reload from your IDE
Debugging applications
Testing Quarkus applications
Choosing a different port for testing
Turning your application into a native executable
Executing integration tests against the native executable
Summary
Creating a Container Image of Your Application
Technical requirements
Setting up Docker
Running Quarkus applications in a container
Running the native executable process in a container
Deploying Quarkus applications on a Kubernetes-native platform
Installing Minishift
Building and deploying a Quarkus application on OKD
Scaling our Quarkus service
Summary
Section 2: Building Applications with Quarkus
Adding Web Interfaces to Quarkus Services
Technical requirements
Adding web content to Quarkus applications
Building a CRUD application
Adding a UI to our customer service
Testing our application
Running the example
Running our application on Minishift
Configuring Cross-Origin Resource Sharing in Quarkus
Adding Enterprise web components
Introducing WebSockets
Building a project that uses Websockets
Creating a WebSocket client project
Adding an AJAX handler
Summary
Managing Data Persistence with Quarkus
Technical requirements
Adding an ORM layer to our applications
Defining the entity layer
Coding the repository classes
Defining REST endpoints
Connecting to the database
Coding a test class
Adding a web interface to our application
Running the application
Caching entity data
Taking an application to the cloud
Making data persistence easier using Panache API
Summary
Building Applications Using the MicroProfile API
Technical requirements
Getting started with the MicroProfile API
Getting started with MicroProfile projects
The Eclipse MicroProfile Health Check
Using liveness and readiness checks
Letting OpenShift manage unhealthy services
The Eclipse MicroProfile Fault Tolerance API
Using Timeout, Fallback, and Retry to create resilient services
Applying a retry policy to your failures
Circuit Breaker
Using asynchronous and bulkhead policies
The Eclipse MicroProfile Metrics API
Configuring OpenAPI and the Swagger UI
Customizing the output of OpenAPI
The Eclipse MicroProfile OpenTracing API
The Eclipse MicroProfile REST Client API
Summary
Securing Applications
Technical requirements
Securing our customer service
Securing Quarkus services with Elytron
Creating a test class that performs basic authentication
Securing Quarkus services with Keycloak
Adding a Keycloak extension to our service
Setting up Keycloak
Defining the security realm
Configuring Quarkus for Keycloak
Coding the test class
Gathering principal and role information at runtime
Securing Quarkus services with MicroProfile JWT
Configuring our service to use JWT
Running our test
Injecting JWT claims and token information
Using HTTPS with Quarkus
Summary
Section 3: Advanced Development Tactics
Advanced Application Development
Technical requirements
Using advanced configuration options
Multiple configuration sources
Configuring custom configuration sources
Using converters in your configuration
Adding custom converters
Testing advanced configuration options
Configuration profiles
Activating profiles
Automatic profile selection
Controlling the application life cycle
Activating a database test resource
Firing events with the Quarkus scheduler
Using the cron scheduler format
Firing one-time events
Summary
Unifying Imperative and Reactive with Vert.x
Technical requirements
Demystifying Reactive Programming and Vert.x
Vert.x API models in Quarkus
Managing the Vert.x core API
Managing Vert.x API for RxJava
Using RxJava with Quarkus
Decoupling events with Vert.x axle libraries
Adding an EventBus layer to Quarkus applications
Rolling up the application
Streaming SSE with Vert.x
Canceling events
Managing the Reactive SQL Client
Configuring your application to use the PostgreSQL reactive client
Running the example
Summary
Reactive Messaging with Quarkus
Technical requirements
Getting started with Reactive Messaging
Streaming messages with Apache Kafka
Composing our stock trading application
Coding bean classes
Streaming messages to Kafka in the cloud
Installing Kafka on OpenShift
Shaping up our project for native cloud execution
Streaming messages with AMQP
Configuring the AMQP broker
Streaming messages to AMQ in the cloud
Summary
Other Books You May Enjoy
Leave a review - let other readers know what you think
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Prev
Previous Chapter
Foreword
Next
Next Chapter
About the author
Contributors
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset