Learn to Build Production-Ready Microservices
The microservices architectural style is the modern approach to building scalable, highly available and easily maintainable systems. OpenCredo have been working with clients to successfully deliver microservices projects over the past 3+ years. This workshop provides a hands on introduction to the concept of microservices using Spring Boot and Spring Cloud, and is suitable for developers, and ‘hands on’ architects new to microservices.
This course is typically delivered over three full days, but please contact us if you have different requirements!
- Learn how to design and build microservices that are easy to deploy, maintain and scale in production
- Create Spring Boot services that communicate via HTTP RPC and messaging
- Package, test and deploy microservices within Docker containers
- Professional experience with designing and building software systems
- 2+ years professional programming experience with modern programming language, such as Java, C# or Python (the course will be taught using Java)
- Exposure to Linux systems
- Attendees must bring their own modern laptop with JDK 8 and Docker Toolbox
- Mix of lecture-style delivery, and hands on coding exercises
- Understand the drivers and requirements of modern software application architectures and explore the benefits and drawbacks of the microservice architectural style
- Learn about the influence of “Twelve-Factor App” design principles for creating cloud native microservice
- Create a basic two service microservice system using the Spring Boot microservices ‘chassis’ framework and associated Spring Cloud tooling that will be deploying locally using Docker containers.
- Build well-designed RESTful and HATEOAS HTTP service endpoints
- Learn about good HTTP API design, including the API-first strategy, consumer-based contracts and API schema evolution
- Learn about high-level reactive principles, and how this relates to designing communication that is responsive, resilient, elastic and message-driven
- Build services that use message-driven communication within the context of message queue based systems (like ActiveMQ or RabbitMQ) and distributed streaming platforms (like Kafka and Amazon Kinesis)
- Building ‘operationally’ aware microservices, including exposing health checks, metrics (via Spring Boot Actuator), logging via logback and the ELK stack, and packaging applications in Docker for easy deployment
- Explore how to best capture data within microservices, including a brief overview of Spring Data NoSQL solutions
- Understand the security implications of this new architectural style, and develop rugged services using SSL, and Spring Security single-sign-on (SSO) and OAuth
- Learn how to apply dynamic service discovery, configuration and secret management using Spring Cloud Config
- Learn about the essential principles of deployment, orchestration and maintenance of microservices running in production