Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 6 additions & 15 deletions _docs/13-anti-patterns.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,21 +73,12 @@ If you remember nothing else:
5. Watch for **coupling sneaking back in** — every anti-pattern in this chapter is a face of
that one failure.

## The shoulders this stands on

The slides and these references are enough to build the system, not just
talk about it:

- Sam Newman, *Building Microservices* (2nd ed.) — service boundaries and
integration.
- Martin Kleppmann & Chris Riccomini, *Designing Data-Intensive Applications* (2nd
ed.) — the data and consistency foundations behind the outbox and saga.
- Adam Bellemare, *Building Event-Driven Microservices* — the event backbone.
- Cornelia Davis, *Cloud Native Patterns*; Unmesh Joshi, *Patterns of Distributed
Systems*.
- The API-design trio for contracts and versioning depth: JJ Geewax, *API Design
Patterns*; Olaf Zimmermann et al., *Patterns for API Design*; Mike Amundsen,
*RESTful Web APIs* — plus the relevant IETF RFCs and drafts.
## Further reading

The books behind these sections, from service boundaries and distributed data to API design,
coupling and stability patterns, are collected in the
[Bibliography]({{ '/bibliography/' | relative_url }}) with links to each publisher, alongside the
relevant IETF RFCs and drafts.

That closes the thirteen core sections. The appendices that follow go deeper on the
questions that always come up — protocols, versioning, WebSockets, sagas, errors,
Expand Down
2 changes: 2 additions & 0 deletions _includes/header.html
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@
{% if page.url contains '/examples/prerequisites' %}aria-current="page"{% endif %}>Prerequisites</a>
<a href="{{ '/examples/' | relative_url }}"
{% if page.url == '/examples/' or page.url == '/cloud-native-design-patterns/examples/' %}aria-current="page"{% endif %}>Examples</a>
<a href="{{ '/bibliography/' | relative_url }}"
{% if page.url contains '/bibliography/' %}aria-current="page"{% endif %}>Bibliography</a>
<a href="https://github.com/{{ site.github_username }}/{{ site.github_repo }}"
rel="noopener">GitHub ↗</a>
</nav>
Expand Down
37 changes: 37 additions & 0 deletions bibliography.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
title: "Bibliography"
layout: plan
permalink: /bibliography/
description: "The books this site's patterns, chapters and appendices build on, with links to each publisher."
---

The chapters and appendices draw on a small set of books on microservices, distributed data,
event-driven systems, API design, coupling and production stability. They are reference works,
not sources: no text or code from any of them is reproduced here. Where a topic in this site is
useful to you, these are the places to go deeper.

| Title | Author(s) | Publisher | Year | Focus |
|---|---|---|---|---|
| [*Building Microservices*, 2nd ed.](https://www.oreilly.com/library/view/building-microservices-2nd/9781492034018/) | Sam Newman | O'Reilly | 2021 | Service boundaries and integration |
| [*Monolith to Microservices*](https://www.oreilly.com/library/view/monolith-to-microservices/9781492047834/) | Sam Newman | O'Reilly | 2019 | Incremental decomposition patterns such as the strangler fig (Appendix K) |
| [*Designing Data-Intensive Applications*, 2nd ed.](https://www.oreilly.com/library/view/designing-data-intensive-applications/9781098119058/) | Martin Kleppmann, Chris Riccomini | O'Reilly | 2026 | Data and consistency foundations behind the outbox and the saga |
| [*Building Event-Driven Microservices*, 2nd ed.](https://www.oreilly.com/library/view/building-event-driven-microservices/9798341622180/) | Adam Bellemare | O'Reilly | 2025 | The event backbone: event streams, schemas and event-driven services |
| [*Cloud Native Patterns*](https://www.manning.com/books/cloud-native-patterns) | Cornelia Davis | Manning | 2019 | Change-tolerant cloud-native design |
| [*Patterns of Distributed Systems*](https://www.informit.com/store/patterns-of-distributed-systems-9780138221980) | Unmesh Joshi | Addison-Wesley | 2023 | Replication, consensus and partitioning building blocks |
| [*Architecture Modernization*](https://www.manning.com/books/architecture-modernization) | Nick Tune with Jean-Georges Perrin | Manning | 2024 | Aligning architecture with business strategy and team structure |
| [*Cloud Native Anti-Patterns*](https://www.packtpub.com/en-us/product/cloud-native-anti-patterns-9781836200581) | Gerald Bachlmayr, Aiden Ziegelaar, Alan Blockley, Bojan Zivic | Packt | 2025 | Common cloud-native mistakes and how to refactor them |
| [*Principles of Web API Design*](https://www.informit.com/store/principles-of-web-api-design-delivering-value-with-9780137355631) | James Higginbotham | Addison-Wesley | 2021 | An outcome-driven API design process |
| [*API Design Patterns*](https://www.manning.com/books/api-design-patterns) | JJ Geewax | Manning | 2021 | Resource and operation design, versioning |
| [*Patterns for API Design*](https://www.informit.com/store/patterns-for-api-design-simplifying-integration-with-9780137670109) | Olaf Zimmermann, Mirko Stocker, Daniel Lübke, Uwe Zdun, Cesare Pautasso | Addison-Wesley | 2022 | Message-exchange, quality and evolution patterns for APIs |
| [*RESTful Web APIs*](https://www.oreilly.com/library/view/restful-web-apis/9781449359713/) | Leonard Richardson, Mike Amundsen (foreword by Sam Ruby) | O'Reilly | 2013 | Hypermedia and REST; successor to Richardson and Ruby's *RESTful Web Services* (2007) |
| [*Learning Domain-Driven Design*](https://www.oreilly.com/library/view/learning-domain-driven-design/9781098100124/) | Vlad Khononov | O'Reilly | 2021 | Bounded contexts and context mapping (Appendix F) |
| [*Balancing Coupling in Software Design*](https://www.informit.com/store/balancing-coupling-in-software-design-universal-design-9780137353538) | Vlad Khononov | Addison-Wesley | 2024 | Integration strength, distance and volatility (Appendix G) |
| [*Release It!*, 2nd ed.](https://pragprog.com/titles/mnee2/release-it-second-edition/) | Michael T. Nygard | Pragmatic Bookshelf | 2018 | Stability patterns: timeouts, circuit breakers, bulkheads (Appendix M) |
| [*Site Reliability Engineering*](https://sre.google/sre-book/table-of-contents/) | Betsy Beyer, Chris Jones, Jennifer Petoff, Niall Richard Murphy (eds.) | O'Reilly | 2016 | Cascading failures and handling overload; free to read online (Appendix M) |

For contracts, versioning and error formats, the relevant IETF RFCs and drafts sit alongside
these books; each chapter names the ones it relies on.

Every title here is also on the PatternCatalyst
[Recommended Reading](https://patterncatalyst.github.io/patterncatalyst-workshops-tutorials-list/books/)
list, which collects the books referenced across all of our workshops and tutorials.
Loading