Course Overview
In this course, you will learn the fundamentals of how to develop modern cloud-native microservices with Helidon and MicroProfile.
Project Helidon is an open-source framework designed by Oracle for creating modern cloud-native microservice-based applications. Helidon was designed from scratch to be simple and fast. It’s the only microservice framework that is comprised of two versions and programming models, so-called flavors: Helidon MP and Helidon SE. Additionally, Helidon integrates with GraalVM for building native images.
Helidon SE forms the core of Helidon. It's a lightweight set of libraries that could be used separately from each other. It is designed to support the reactive programming model that many developers like. No injection 'magic' is used, which makes a Helidon SE application easy to debug. There's no special jar format, no special classloaders. Your application is just a vanilla Java SE application. That also means it's compatible with all IDEs with no special plugins required.
Helidon MP supports the MicroProfile specification and belongs to the MicroProfile family. It’s built on Helidon SE and not derived from an application server. Thus, there's no deployment model, no Java EE packaging, no extra stuff you don't need. MicroProfile is a specification for building microservices architecture. MicroProfile was derived from Jakarta EE, formerly Java EE, and thus allows developers to migrate and reuse their existing Java EE code seamlessly in modern microservice applications. It delivers application portability of microservices across multiple MicroProfile vendor frameworks such as Helidon, Quarkus, Payara Micro, Open Liberty, and TomEE.
Get Helidon: www.helidon.io
Who should attend
Developers, software architects, and project managers who want to develop modern cloud-native microservices with Helidon. Also trainers and consultants.
- Java developers
- Software architects
- Project managers
- Java trainers
- Technical consultants and sales engineers
Prerequisites
- Proficiency in using a Java IDE such as Eclipse, IntelliJ, or Netbeans
- Fundamental knowledge in Java
- Proficiency in object-oriented programming
- Experience with Maven
- Experience with Git
Course Objectives
By the end of the course, you should be able to meet the following objectives:
- Design of a cloud-native microservice architecture
- Build microservices with MicroProfile and Helidon MP
- Build independent REST services
- Persist data by using Java Persistence API and MicroStream
- Secure your microservices
- Test and check your microservices
- Build and deploy your microservices
Course Content
- Cloud-native microservice architecture
- MicroProfile introduction and overview
- Getting started with Helidon MP
- Injecting dependencies into microservices with Contexts and Dependency Injection
- Create a RESTful web service
- Create a REST service with JAX-RS and JSON-B
- Use REST client
- Consume a RESTful web service with JSON-B and JSON-P
- Document and filter RESTful APIs by using OpenAPI
- REactive service: Consume RESTful web services asynchronously
- Configuration
- Static configuration injection using MicroProfile Config
- Fault tolerance
- Observability
- MicroProfile Metrics by using Jaeger and MicroProfile OpenTracing
- MicroProfile Health Check
- Security
- Authentication and authorization
- Control user and role access by using MicroProfile JSON Web Tokens (JWT)
- Validate user input by using bean validation
- Persistence
- Persist data to a database by using Java Persistence API (JPA)
- Caching HTTP session data by using JCache and MicroStream
- Persist data by using MicroStream native object graph persistence
- Testing microservices
- Build and deployment of microservices
- Build native executables by using GraalVM
- Getting started with Helidon SE
- Reactive programming
- Get started with Helidon SE and Helidon SE configuration
- Exercises with coding
- Answering your individual questions