Building Microservices in Java with Spring Boot
Course Description
The term microservices has gained significant traction over the last few years. Describing a specific style of distributed software architecture, microservices are small, independently deployable units that work together to form a complete system. Microservices live on the web, live in the cloud, and work with all manner of data (SQL, NoSQL, In-Memory). They are production-ready services driven by ever-changing demands and scale.
Java developers looking to adopt microservices need to consider the practical aspects of application development. How can services be developed quickly? How can a broad range of technologies be supported? How can a consistent programming model be kept? For many companies, the answer is Spring Boot and the wider Spring ecosystem.
2 days
Contact us for pricing
Prerequisites
Basic Java familiarity.What You Will Learn
Understand the patterns typical of modern application architectures. Understand how Spring Boot ties together various parts of the Spring platform to make getting results a snap, on par with the agility you might otherwise expect from a Node.js or Ruby on RailsLearn how to build microservices with Spring Cloud
Who Should Take This Course
Existing and new Spring users. Java developers working with: SQL, NoSQL, mobile, web applications, highly concurrent service backends, etc.Bootstrapping
Introduce Spring BootWrite Groovy-based Spring CLI applications
Bootstrap with the Spring Initializr
Build with Maven and Gradle
Work with starter POMs
Create runnable fat JARs
Understand auto-configuration
Using (Twelve-Factor App) Style Configuration
Understand Twelve-Factor App configurationAsk questions about an application's environment
Read external configuration
Map properties to POJOs/Relaxed binding
Support multiple environments using Spring profiles
Configuration with the journaled, secure Spring Cloud Configuration Server
The Cloud
The Cloud / Compare IaaS and PaaSDeploy your apps to Heroku and Cloud Foundry
Containerize your applications with Docker
Consume services in The Cloud
Optimize for The Cloud using Spring Session and Spring Cloud AWS
Working with Data
Contextualize your microservice dataUnderstand Spring Data
Work with relational databases
Evolve your database using Flyway
Use Redis distributed data structures
Store data with MongoDB
Search data using Elasticsearch
Expose Spring Data repositories over REST
Microservice and REST
Understand RESTUnderstand status codes
Understand content negotiation
Understand HTTP Clients
Use hypermedia
Handle errors
Version your API
Use Differential Synchronization and JSON PATCH
Dealing with Integration and Batch Processing
HTTP REST microservicesUnderstand Enterprise Application Integration Patterns
Batch data processing with Spring Batch
Use CQRS to connect microservices
Creating Operations-Friendly Microservices
Understand the implications of agile methodologies on operationsGain insight via logging
Introduce the Spring Boot Actuator
Monitor microservices
Diagnose errors
Measure anything and everything with metrics
Extend the Spring Boot Actuator
Choreographing Microservices
Deployment and scaling techniquesDiscover and register services with Eureka and Consul
Route on the client with Ribbon
Prevent failure cascades using Hystrix
Isolate failures using circuit breakers
Connect web clients to backend services with Zuul
Developing Web Applications
Understand web applications in the microservice worldServe resources from a Spring Boot application
Use templating technologies such as Thymeleaf
Resolve and transform resources
Securing Microservices with Spring Security
Using Spring securityUse SSL/TLS and x509 mutual authentication
Understand the problems with passwords and certificates
Use OAuth and single sign-on
SpringSpring FrameworkSpring MVCMicroservices