Understanding Microservices | A Technical Overview
What You’ll Learn
Microservices continues the evolution of systems and applications being decomposed into smaller components that work together to accomplish larger business tasks and services. Microservices are single purpose, autonomous, and independently deployable.
This course provides a solid understanding of what microservices bring to the table and how to facilitate the implementation, deployment, and management of microservices.
Students are taken on an in-depth tour of the basic microservices concepts as well as how they relate to SOA and other architectural styles. They will examine the challenges associated with microservices as well as how to identify and design them. The course then moves into designing and building REST-based services and working those services using various components. The course addresses additional challenges such as scaling, monitoring, securing, and containerizing microservices.
Working in a dynamic, interactive discussion and demo environment, led by our experienced services professional, students will be able to:
- · Explain the issues associated large, monolithic applications and how microservices present an opportunity to address many of those issues.
- · Understand the relationships between microservices and SOA, SOAP services, and other recent initiatives.
- · Implement RESTful microservices that take advantage of containers and the declarative nature of assembling simple components into executable entities.
- · Work with implemented microservices to package, deploy, and manage them.
- · Understand and work with the Cloud to scale microservices
- · Containerize microservices using Docker
- · Recognize and use best practices relative to designing and working with microservices
- · If time permits, there is also coverage of OAuth and OpenID
Need different skills or topics? If your team requires different topics or tools, additional skills or custom approach, this course may be easily adjusted to accommodate. We offer additional services, programming, design and security courses which may be blended with this course for a track that best suits your development objectives. Our team will collaborate with you to understand your needs and will target the course to focus on your specific learning objectives and goals.
Audience & Pre-requisites: Who Should Attend
This an overview level services training course, designed for people who need to understand and manage existing or upcoming microservice projects. Experience with managing and working with enterprise applications will be helpful. We will explore the terminology, the specification, the processes and technologies specific to microservices. Attendees should have a minimum of 2 years working knowledge in the IT industry. A basic understanding of software development and web-based applications is necessary. Actual development working knowledge is helpful but not necessary.
Session: Microservices Overview
Lesson: Monolithic Versus Micro
- Trend to reduce the monolithic nature of applications
- Explain the principles and characteristics of microservices
- Recognize both good and poor candidates for microservices
Lesson: Supporting and Managing Microservices
- Scaling Microservices
- Microservices Components
- Circuit-Breakers
- Load Management
- Provisioning
- Cloud Services
Lesson: Designing Microservices
- Microservice Boundaries
- Size of Deployable Unit
- Communication Patterns
- Microservice endpoints
- Data Stores and Transaction Boundaries
- Challenges with Microservices
Session: The Microservices Ecosystem
Lesson: Working with Microservices
- · Typical Microservices Stack
- · Monitoring Microservices
- · Logging
- · Containerizing with Docker
- · Deploying into Docker
- · Orchestration of Microservices
Lesson: Microservice Best Practices
- · Motivation and Mindset
- · Minimum Viable Product
- · Challenges of Data and Data Islands
- · Spring Data and Microservices
- · PrePersist, PreUpdate, and Repository Interface
- · A DevOps-Style Microservice Life Cycle
- · Continuous Delivery Pipeline
- · Governance
- · Tracking APIs and API Consumers
Lesson: Microservice Patterns
- · Aggregator Pattern
- · Branch Pattern
- · Proxy Pattern
- · Chained Pattern
- · Shared Resources (Data) as a Pattern
- · Asynchronous Messaging Pattern
- · Circuit Breaker/Bulkhead Isolation Pattern
- · Continuous Integration/Delivery Pattern
Lesson: Microservice Anti-Patterns and Challenges
- · Shared Resources as an Anti-Pattern
- · Microservice Costs
- · When to Apply and NOT Apply
- · Data island’s
- · Dependency management
- · Cohesion Creep
- · Avoiding Versioning
- · Continuous Integration/Delivery Anti-Pattern
Time Permitting:
Lesson: Overview of OAuth and OpenID
- · OAuth 2.0 Terminology and Concepts
- · Usage Models
- · OAuth 2.0 Tokens
- · OpenID Connect Overview
- · OpenID Providers
- · Spring OAuth2 Project
Sorry! It looks like we haven’t updated our dates for the class you selected yet. There’s a quick way to find out. Contact us at 502.265.3057 or email info@training4it.com
Request a Date