Share E-Book
Scan to open this page

Scan with your phone to open this page

AuthorAdam Bellemare

Organizations today often struggle to balance business requirements with ever-increasing volumes of data. Additionally, the demand for leveraging large-scale, real-time data is growing rapidly among the most competitive digital industries. Conventional system architectures may not be up to the task. With this practical guide, you’ll learn how to leverage large-scale data usage across the business units in your organization using the principles of event-driven microservices. Author Adam Bellemare takes you through the process of building an event-driven microservice-powered organization. You’ll reconsider how data is produced, accessed, and propagated across your organization. Learn powerful yet simple patterns for unlocking the value of this data. Incorporate event-driven design and architectural principles into your own systems. And completely rethink how your organization delivers value by unlocking near-real-time access to data at scale. You’ll learn: How to leverage event-driven architectures to deliver exceptional business value The role of microservices in supporting event-driven designs Architectural patterns to ensure success both within and between teams in your organization Application patterns for developing powerful event-driven microservices Components and tooling required to get your microservice ecosystem off the ground

AI Reading Assistant

Whole-book reading guide from stratified index samples; jump to passages in the text

AI guide
【One-Line Pitch】 A practical architecture guide for engineers and technical leads who need to move beyond request-response systems and build organizations around real-time event streams. It shows how to design, operate, and evolve event-driven microservices so that data becomes a shared, trustworthy asset rather than a set of brittle integrations. 【Book Arc】 - **Opening (~0%–10%)**: Frames the core problem — conventional architectures and ad hoc data communication cannot keep up with real-time, organization-wide data demands — and introduces the event stream as the single source of truth, with consumers doing their own modeling and querying. - **Early (~10%–30%)**: Establishes fundamentals: what an event-driven microservice is, how topologies are built, why explicit schemas act as contracts, and how to liberate data from existing stores using change-data capture and outbox tables. - **Middle (~30%–50%)**: Moves into operational mechanics — partition assignment and copartitioning, event timestamps and clock synchronization, out-of-order and late events, windowing strategies, and the trade-offs between internal and external state storage. - **Late (~50%–80%)**: (Excerpts do not cover this range in detail.) Likely addresses stateful processing, scaling, and cross-team architectural patterns, based on the book's stated scope. - **Ending (~80%–100%)**: (Excerpts do not cover this range.) The blurb indicates coverage of components, tooling, and getting a microservice ecosystem off the ground, but specific late-chapter content is not present in the excerpts. 【Key Takeaways】 - **Event streams are the single source of truth** (Opening): Each event is a statement of fact; if teams keep conflicting data elsewhere, the stream's role as the organization's communication backbone collapses. - **Consumers own modeling and querying** (Opening): Unlike an overextended implementation layer, the event backbone provides no query API — all business logic and data mixing shift to producers and consumers within their bounded contexts. - **Explicit schemas are non-negotiable contracts** (Early): Without a predefined schema, teams fall back on brittle implicit contracts; the author recommends Avro or Protobuf over JSON because JSON lacks full-compatibility schema evolution. - **Events must tell the whole truth** (Early): A good event is not a notification that something happened but a complete, immutable description of what occurred, so consumers need no other source. - **Outbox tables give the strongest CDC guarantee** (Early): Bundling internal writes and outbox writes in one transaction, with before-the-fact serialization, keeps the event stream eventually consistent with the source store while isolating the internal data model. - **Partitioning and copartitioning determine correctness** (Middle): Copartitioned streams must land on the same consumer instance; assignment strategies like round-robin aim for even distribution while minimizing disruptive reassignment. - **Time is genuinely hard in distributed systems** (Middle): Clocks drift, NTP only gets you close, and out-of-order events arise from repartitioning or multiple producers — so windowing, grace periods, and late-event policies must be deliberate business decisions. - **State placement is a performance decision** (Middle): Internal state (memory or local disk) versus external networked storage carries large throughput implications; the excerpts cite a dramatic drop when network latency is introduced. 【Reading Tips】 - Read the opening chapters closely — the single-source-of-truth argument and consumer-owned modeling are the conceptual foundation everything else depends on. - Treat the schema and event-design material as a checklist to apply immediately; these are the decisions that are hardest to reverse later. - Skim the timestamp and clock-synchronization details on a first pass, then return when you actually design windowing or late-event handling. - Use the late-event questions in the middle chapters as a template for conversations with business stakeholders, not just as technical guidance. - Keep the book's stated scope in mind: it is as much about organizational data flow and team boundaries as it is about code. 【Coverage Limits】 This guide is based on stratified excerpts covering roughly the first half of the book; later chapters on scaling, tooling, and cross-team patterns are referenced by the blurb but not detailed in the source material.
Page 10
k 4. Independent Scaling of the Processing and Data Layer 2. Hybrid BPC Applications with External Stream Processing   1. Example: Using an External Stream-P...
View in text
Excerpt 2
sumer, particularly as use cases and data changes over time. As mentioned, I recommend instead choosing a strongly defined, explicit schema format that suppo...
View in text
Excerpt 3
instance, the query pattern and CDC log pattern can detect DDL changes only after the fact—that is, once they have already been applied to the data set. Conv...
View in text
Excerpt 4
dow is deemed complete. Then, keep the window(s) around and available for the predetermined grace period. Whenever a late event arrives for that window, upda...
View in text
Excerpt 5
ayments are processed, including how many attempts to make, as that is part of the bounded context of the payment microservice. The only thing the orchestrat...
View in text
Excerpt 6
s offloaded entirely to the underlying data layer, with the producer and consumer components acting as simple integration mechanisms. Independent Scaling of...
View in text
Excerpt 7
library that is embedded within an individual application, where the input and output events are stored in the Kafka cluster. It combines the simplicity of w...
View in text
Excerpt 8
me to go toward serving a single producer or consumer group. This quota prevents accidental denial of service due to an unexpectedly chatty producer or a hig...
View in text
Tags
AI categories
Cloud NativeBackendSoftware
Publish Year: 2020
Language: English
File Format: PDF
File Size: 5.1 MB
Text Preview (First 20 pages)
Registered users can read the full content for free

Register as a Gaohf Library member to read the complete e-book online for free and enjoy a better reading experience.

Generating text preview…