مطالبی که در کتاب Building Microservices یاد خواهید گرفت:
• Get new information on user interfaces, container orchestration, and serverless
• Align system design with your organization’s goals
• Explore options for integrating a service with your system
• Understand how to independently deploy microservices
• Examine the complexities of testing and monitoring distributed services
• Manage security with expanded content around user-to-service and service-to-service models
Table of Contents:
I. Foundation
1. What Are Microservices?
Microservices at a Glance
Key Concepts of Microservices
The Monolith
Enabling Technology
Advantages of Microservices
Microservice Pain Points
Should I Use Microservices?
Summary
2. How to Model Microservices
Introducing MusicCorp
What Makes a Good Microservice Boundary?
Types of Coupling
Just Enough Domain-Driven Design
The Case for Domain-Driven Design for Microservices
Alternatives to Business Domain Boundaries
Summary
3. Splitting the Monolith
Have a Goal
Incremental Migration
The Monolith Is Rarely the Enemy
What to Split First?
Decomposition by Layer
Useful Decompositional Patterns
Data Decomposition Concerns
Summary
4. Microservice Communication Styles
From In-Process to Inter-Process
Technology for Inter-Process Communication: So Many Choices
Styles of Microservice Communication
Pattern: Synchronous Blocking
Pattern: Asynchronous Nonblocking
Pattern: Communication Through Common Data
Pattern: Event-Driven Communication
Proceed with Caution
Summary
II. Implementation
5. Implementing Microservice Communication
Looking for the Ideal Technology
Technology Choices
Serialization Formats
Schemas
Handling Change Between Microservices
Avoiding Breaking Changes
Managing Breaking Changes
DRY and the Perils of Code Reuse in a Microservice World
Service Discovery
Service Meshes and API Gateways
Documenting Services
Summary
6. Workflow
Database Transactions
Distributed Transactions—Two-Phase Commits
Distributed Transactions—Just Say No
Sagas
Summary
7. Build
Summary
8. Deployment
From Logical to Physical
Principles of Microservice Deployment
Deployment Options
Which Deployment Option Is Right for You?
Kubernetes and Container Orchestration
Progressive Delivery
Summary
9. Testing
Types of Tests
Test Scope
Implementing Service Tests
Implementing (Those Tricky) End-to-End Tests
Should You Avoid End-to-End Tests?
Developer Experience
From Preproduction to In-Production Testing
Cross-Functional Testing
Summary
10. From Monitoring to Observability
Disruption, Panic, and Confusion
Single Microservice, Single Server
Single Microservice, Multiple Servers
Multiple Services, Multiple Servers
Observability Versus Monitoring
Building Blocks for Observability
Standardization
Selecting Tools
The Expert in the Machine
Getting Started
Summary
11. Security
Core Principles
The Five Functions of Cybersecurity
Foundations of Application Security
Implicit Trust Versus Zero Trust
Securing Data
Authentication and Authorization
Summary
12. Resiliency
What Is Resiliency?
Failure Is Everywhere
How Much Is Too Much?
Degrading Functionality
Stability Patterns
Spreading Your Risk
CAP Theorem
Chaos Engineering
Blame
Summary
13. Scaling
The Four Axes of Scaling
Combining Models
Start Small
Caching
Autoscaling
Starting Again
Summary
III. People
14. User Interfaces
Toward Digital
Ownership Models
Toward Stream-Aligned Teams
Pattern: Monolithic Frontend
Pattern: Micro Frontends
Pattern: Page-Based Decomposition
Pattern: Widget-Based Decomposition
Constraints
Pattern: Central Aggregating Gateway
Pattern: Backend for Frontend (BFF)
GraphQL
A Hybrid Approach
Summary
15. Organizational Structures
Loosely Coupled Organizations
Conway’s Law
Team Size
Understanding Conway’s Law
Small Teams, Large Organization
On Autonomy
Strong Versus Collective Ownership
Enabling Teams
Shared Microservices
Internal Open Source
Pluggable, Modular Microservices
The Orphaned Service
Case Study: realestate.com.au
Geographical Distribution
Conway’s Law in Reverse
People
Summary
16. The Evolutionary Architect
What’s in a Name?
What Is Software Architecture?
Making Change Possible
An Evolutionary Vision for the Architect
Defining System Boundaries
A Social Construct
Habitability
A Principled Approach
Guiding an Evolutionary Architecture
Architecture in a Stream-Aligned Organization
Building a Team
The Required Standard
Governance and the Paved Road
Technical Debt
Exception Handling
Summary
Afterword: Bringing It All Together
What Are Microservices?
Moving to Microservices
Communication Styles
Workflow
Build
Deployment
Testing
Monitoring and Observability
Security
Resiliency
Scaling
User Interfaces
Organization
Architecture
Further Reading
Looking Forward
Final Words
نقد و بررسیها
هنوز بررسیای ثبت نشده است.