Objectives of the training
Acquire the knowledge needed to design, develop and orchestrate a best-practice microservices architecture, based on the Spring Cloud stack.Targeted audience
Developers and architects.Prerequisite
This course requires a sound knowledge of the basics of Java programming (principles of object-oriented programming, generic types, annotations, lambda expressions), Spring and Spring boot and experience of working with Eclipse or IntelliJ.Trainers
Benefits for Participants
Define the business scope of a micro-service;
Applying the principle of service discovery with Spring Cloud Netflix;
Provide a stable entry point to a set of micro-services with Spring Cloud Gateway;
Exchange information between micro-services with Kafka and spring-kafka;
Outsource configuration management with Spring Cloud Config Server.
Course architecture
Introduction
Bounded contexts as a prerequisite for micro-services architecture.
Stateless operation to promote horizontal scalability.
Types of deliverables: stand-alone application or serverless function.
Data sovereignty.
Communication between micro-services.
Testing.
Putting it into practice: refactoring a monolithic application into micro-services.
Service discovery with Spring cloud Netflix
Service discovery: introducing the concept.
The role of the Eureka server.
Self registration and self unregistration operations.
Registry propagation.
Health checks as a means of keeping the registry up to date.
Implementing load balancing.
Requesting an application with RestClient.
Practical application: getting to grips with a Spring application (data access, REST API, testing).
Publish / subscribe with the brokerApache Kafka
The role of the broker in a micro-services architecture.
Introducing Kafka.
Subscribing to a topic.
Sending messages to a topic.
Putting it into practice: asynchronous communication between micro-services with Kafka and spring-kafka.
Exposing microservices with Spring cloud API Gateway
The API Gateway as an entry point to a set of micro-services.
Routing rules.
API Gateway action on requests and responses (retries, security, etc.).
Data aggregation.
Putting it into practice: creating an API Gateway with Spring Cloud Gateway to expose the micro-services developed above.
Centralizing configuration with Spring Cloud Config
The role of a config server.
Storing and protecting properties.
Property encryption methods.
Coupling with a Eureka Server.
Declaring a config server in client applications.
Putting it into practice: creating a config server with Spring cloud Config, coupling micro-services with it.
Pedagogical details
Training architecture
Explanation, for each concept, of the problem it claims to solve, Putting a concept into practice immediately after it has been presented, Validation of each step by execution of unit tests, Exercise “fil rouge” to obtain a complete application at the end of the course, End-of-chapter MCQs to ensure knowledge acquisition.
Type of training
Private or personalized training
Do you have several employees interested in the same training course? Whether in person at your offices or remotely in virtual mode, we offer private training courses tailored to your team's needs. Group rates are available. Contact us for more details or request a quote online.
Request a quotePrivate or personalized training
Do you have several employees interested in the same training course? Whether in person at your offices or remotely in virtual mode, we offer private training courses tailored to your team's needs. Group rates are available. Contact us for more details or request a quote online.
Request a quote