Duration
1 Days
6 CPD hours
This course is intended for
This overview-level course is ideally suited for professionals seeking an
introduction to microservices architecture and its application within a business
context. Ideal attendee roles include software developers, system architects,
technical managers, and IT professionals who are part of teams transitioning to
a microservices approach. It's also an excellent starting point for
non-technical roles such as product owners or business analysts who work closely
with technical teams and want to better understand and become conversant in the
language and principles of microservices.
Overview
This course combines engaging instructor-led presentations and useful
demonstrations with engaging group activities. Throughout the course you'll
explore:
Understand the Basics of Microservices: Get to know the fundamental principles
and characteristics of microservices and how they revolutionize traditional
software development approaches.
Explore the Design of Microservices: Gain an overview of how microservices are
designed based on business requirements and what makes them unique in the
software architecture world.
Overview of Managing and Scaling Microservices: Get an introduction to how
microservices are managed and scaled independently, and understand the
significance of these features in your business operations.
Familiarize with the Microservices Ecosystem: Learn about the typical patterns,
best practices, and common pitfalls in the microservices world, setting a
foundation for future learning and implementation.
Introduction to Microservices in a Business Context: Acquire a basic
understanding of how microservices can be aligned with specific business
capabilities, and get a glimpse into how they can coexist with legacy systems in
a business setting.
Microservices have rapidly emerged as a popular architectural style, breaking
down applications into small, independent services that can be developed,
deployed, and scaled individually. Microservices offer a robust method to
address a variety of projects, such as e-commerce platforms and content
management systems, enhancing scalability and boosting productivity. This
technology, when employed correctly, can greatly increase software delivery
speed and system resilience, making it a crucial skill set for modern technology
professionals.Understanding Microservices - A Technical Overview is a one-day
course ideally suited for technical professionals seeking an introduction to
microservices architecture and its application within a business context. Under
the guidance of an industry expert, this engaging class combines lecture-style
learning with lively demonstrations, case study review and group
discussions.Throughout the course you?ll explore the principles and
characteristics that define microservices, how to identify suitable projects for
a microservices approach, the factors to consider when designing them, and the
strategies to effectively manage and scale them within complex systems. You?ll
also learn about the best practices, patterns, and anti-patterns, arming you
with the knowledge to make the right architectural choices. This course also
explores the real-world implementation of microservices in a business
enterprise. We'll discuss how to align the application of microservices with
your organization's specific business capabilities, and offer strategies for
smoothly integrating this technology within existing legacy systems.
INTRODUCTION TO MICROSERVICES
* Understand what microservices are and their role in modern software
development.
* Introduction to Microservices: what they are and why they matter.
* Monolithic vs Microservices: highlighting the shift and benefits.
* Key principles and characteristics of microservices.
* Identifying suitable applications for microservices transformation.
* Demo: Analyzing a sample application and identifying potential microservices
ARCHITECTING AND MANAGING MICROSERVICES
* Learn the basic strategies for scaling and managing microservices.
* Scaling Microservices: from a single service to hundreds.
* Key components of a microservices architecture.
* Introduction to resilience patterns: Circuit-Breakers and Bulkheads.
* Load management and provisioning in a microservices setup.
* Understanding the role of cloud services in microservices.
* Optional Demo: Illustrating how a microservice-based application scales in
real-time
DESIGNING MICROSERVICES
* Learn the key aspects to consider when designing microservices.
* Defining microservice boundaries: Deciding the scope of a microservice.
* Communication patterns in microservices.
* Understanding Microservice endpoints.
* Exploring data stores and transaction boundaries in microservices.
* Overcoming challenges in Microservices design.
* Demo: Designing microservices for a hypothetical business requirement
IMPLEMENTING MICROSERVICES IN A BUSINESS ENTERPRISE
* Understand the process and considerations for implementing microservices in
an enterprise context.
* Assessing enterprise readiness for microservices.
* Building the business case for microservices: strategic advantages and
potential challenges.
* Aligning microservices with business capabilities.
* Organizational changes: Team structures and processes for microservices.
* Dealing with Legacy Systems: Strategies for microservices integration.
* Demo: Exploring a case study of successful microservices implementation in a
business enterprise
THE MICROSERVICES ECOSYSTEM
* Understand the key tools and best practices in the Microservices ecosystem.
* Understanding the typical Microservices Stack.
* Monitoring and Logging in Microservices.
* Introduction to Docker: Containerization of Microservices.
* Deployment strategies in a Microservices setup.
* Introduction to Orchestration in Microservices
* Demo: Containerizing and deploying a simple microservice
MICROSERVICES DEPLOYMENT STRATEGIES
* Understand various ways to safely introduce changes in a microservices
environment.
* The concept of Blue-Green Deployment: changing services without downtime.
* Canary Releases and Feature Toggles: slowly rolling out changes to users.
* Database changes in a microservices environment: keeping data consistent.
* Demo: Examining various deployment strategies
MICROSERVICES BEST PRACTICES AND DEVOPS
* Learn key strategies to ensure a smooth operation of your microservices
setup.
* The DevOps culture in Microservices: collaboration for efficiency.
* Defining a Minimum Viable Product in a Microservices setup: building small,
delivering fast.
* Dealing with data in a distributed setup: managing Data Islands.
* The importance of Continuous Integration/Continuous Delivery in a
microservices setup.
* Governance: Keeping track of your services and their consumers.
* Demo: Visualizing a simple continuous delivery pipeline
MICROSERVICES PATTERNS AND ANTI-PATTERNS
* Learn about common do's and don'ts when working with microservices.
* Understanding patterns that help with efficient microservices operation.
* Recognizing and avoiding anti-patterns that can hinder performance.
* Dealing with common challenges: dependencies between services, managing
service boundaries.
* Demo: Examples of real-world patterns and anti-patterns
SIMPLE OVERVIEW OF OAUTH AND OPENID FOR MICROSERVICES
* Introduction to OAuth and OpenID: What they are and why they matter in
Microservices.
* The role of tokens in OAuth 2.0: How they help in securing communications.
* A simplified look at OpenID Connect: Linking identities across services.
* Demo