Design Patterns for Cloud Native Applications Patterns in Practice Using APIs, Data, Events, and Streams (Kasun Indrasiri, Sriskandarajah Suhothayan) (Z-Library)
With the immense cost savings and scalability the cloud provides, the rationale for building cloud native applications is no longer in question. The real issue is how. With this practical guide, developers will learn about the most commonly used design patterns for building cloud native applications using APIs, data, events, and streams in both greenfield and brownfield development.
You'll learn how to incrementally design, develop, and deploy large and effective cloud native applications that you can manage and maintain at scale with minimal cost, time, and effort. Authors Kasun Indrasiri and Sriskandarajah Suhothayan highlight use cases that effectively demonstrate the challenges you might encounter at each step.
• Learn the fundamentals of cloud native applications
• Explore key cloud native communication, connectivity, and composition patterns
• Learn decentralized data management techniques
• Use event-driven architecture to build distributed and scalable cloud native applications
• Explore the most commonly used patterns for API management and consumption
• Examine some of the tools and technologies you'll need for building cloud native systems
AI Reading Assistant
Whole-book reading guide from stratified index samples; jump to passages in the text
Tip the Site
Support this siteYour recognition and a small knowledge-service contribution help keep this technical work open source.Scan the WeChat Pay or Alipay code below. Logged-in and guest visitors can both tip.
WeChat Pay
Alipay
Open WeChat or Alipay and scan. No login required.
AI guide
【One-Line Pitch】
A pattern catalog for engineers who already accept cloud native as the goal and now need the "how": concrete design patterns for APIs, data, events, and streams, with the trade-offs and technologies behind each. Best for backend and platform developers, architects, and tech leads working on microservices in greenfield or brownfield systems.
【Book Arc】
- **Opening (~0%–10%)**: Frames the problem — cloud native is settled in principle, so the real question is design. Introduces the shift from SOA/ESB monoliths to microservices, and previews the pattern families covered in later chapters.
- **Early (~10%–30%)**: Establishes fundamentals: cloud native characteristics, the build methodology (including a control plane for dynamic management and observability/monitoring), Kubernetes as the de facto orchestration layer, and why conventional patterns must be adapted.
- **Early–Middle (~30%–50%)**: Communication patterns. Synchronous styles (request-response, RPC) and asynchronous messaging (queues, single-receiver, asynchronous request-reply), plus service definition concerns like schema registries and AsyncAPI.
- **Middle (~50%–65%)**: Connectivity and composition — service connectivity, abstraction, registry/discovery, resilient connectivity, sidecar and service mesh, then orchestration, choreography, and Saga for business transactions.
- **Late (~65%–85%)**: Data management patterns — choosing data stores, decentralized data ownership, and composing data across services while preserving scalability and reliability.
- **Ending (~85%–100%)**: Event-driven architecture patterns — event delivery, event sourcing, and orchestrating events across asynchronous services, closing with the tools and technologies for building cloud native systems.
【Key Takeaways】
- **Cloud native is a methodology shift, not just a deployment target** (Early): the book stresses that architecture, technology, and process all change together; treating it as "containers plus CI/CD" misses the point.
- **Microservices exist to remove SOA's centralization** (Early): fine-grained, business-capability-oriented services replace the ESB, enabling independent scaling and deployment — the trade-off is distributed complexity you must design for.
- **Kubernetes is the portability substrate** (Early): its abstractions (service discovery, health monitoring, rolling upgrades, affinity, namespaces) let applications avoid coupling to a specific cloud, provided you avoid platform-specific features.
- **Choose communication style by use case, not by fashion** (Middle): request-response suits interactive calls; asynchronous messaging suits decoupling and guaranteed delivery. The book warns that asynchronous request-reply is not simply a "better" request-response.
- **Schemas are a reliability concern in async messaging** (Middle): without schema-based serialization, producers and consumers drift into type mismatches; registries and AsyncAPI-style contracts address this, at some message-size cost.
- **Connectivity patterns are layered, not competing** (Middle): service abstraction, discovery, resilient connectivity, sidecar, and service mesh solve different problems and are often combined.
- **Composition needs a transaction strategy** (Middle): orchestration and choreography organize multi-service business flows, while Saga handles failure and consistency across them.
- **Data is the hard part of distribution** (Late): decentralized data management, store selection, and data composition are framed as first-class design decisions rather than afterthoughts.
【Reading Tips】
- Read Chapters 1–2 closely if you are new to cloud native; they define vocabulary used everywhere else. Skim if you already run microservices on Kubernetes.
- Treat the pattern chapters as a reference: jump to the pattern matching your current problem (e.g., Saga for distributed transactions, service mesh for cross-cutting connectivity) rather than reading linearly.
- Pay attention to the "Considerations" and "Related patterns" framing — the value is in when *not* to use a pattern, and which patterns pair well.
- Keep the technology comparisons (REST, GraphQL, gRPC, WebSocket; AMQP brokers; schema registries) as a decision aid, not a ranking.
- The excerpts do not cover the full text of the data management and event-driven chapters in detail; read those chapters directly for their pattern specifics.
【Coverage Limits】
This guide is synthesized from stratified excerpts and the table of contents; several chapters (notably data management and event-driven architecture) are represented only by their scope statements, so pattern-level detail there is not summarized.
Excerpt 1
34 Single-Receiver Pattern 34 Multiple-Receiver Pattern 36 Asynchronous Request-Reply Pattern 38 Summary of Asynchronous Messaging Patterns 40 Service Defini...
into the containers Networking infrastructure abstractions Provides a networking overlay to build communication among containers Service discovery Offers bui...
g a drastically different set of patterns and technologies. Both event- and stream-based services feature event/stream management for the pro‐ ducer (sink) s...
ers and consumers. In addition, the amount of metadata that needs to be sent along with the message increases the message size, which slows the performance o...
cated service registry alongside Kubernetes. Considerations Service Registry and Discovery is an essential pattern for building cloud native appli‐ cations....
n too. This is not the case with most of the practical sce‐ narios. The participant may fail to commit a transaction although it has responded Yes. Given the...
erations, CQRS not only eliminates the impact of one on the other by improving the performance and scalability of the system, but also helps iso‐ late operat...
build and execute complex clients to fulfill that use case. Sometimes we might need to store static data securely. If we need to allow authorized users to ac...
Support this siteYour recognition and a small knowledge-service contribution help keep this technical work open source.
Scan the WeChat Pay or Alipay code below. Logged-in and guest visitors can both tip.
WeChat PayAlipay
Open WeChat or Alipay and scan. No login required.
Add Tag
Enter tag name (max 50 characters)
Share E-Book
Design Patterns for Cloud Native Applications Patterns in Practice Using APIs, Data, Events, and Streams (Kasun Indrasiri, Sriskandarajah Suhothayan) (Z-Library)
Scan QR code with your phone to access
Copy the link or scan the QR code to access this e-book on your phone
Share E-Book via Email
Please enter email address
Donation Statistics
¥.00
Total Donations
0
Donation Count
Design Patterns for Cloud Native Applications Patterns in Practice Using APIs, Data, Events, and Streams (Kasun Indrasiri, Sriskandarajah Suhothayan) (Z-Library)
Find Your Favorite Books
Only registered users can comment after logging in. Comments need to be reviewed by administrators before being displayed
Loading comments...
Reply to Comment
Edit Comment