Top all-time · #1280
Chris Richardson
Personal blog · microservices.ioprogrammingsystemscareer
Chris Richardson's personal blog at microservices.io covers programming, systems and career. Since 2014, 58 different Hacker News readers have linked it 71 times, most often “The Transactional Outbox Pattern”. It is still writing: the last post was on 2026-10-22, and you can follow it by feed.
Microservices - also known as the microservice architecture - is an architectural style that structures an application as a collection of loosely coupled services, which implement business capabilities. The microservice architecture enables the continuous delivery/deployment of large, complex applic
Most-linked posts?
- The Transactional Outbox Pattern10 people · 12 mentions · first linked 2020-10-30
- /patterns/data/saga.html7 people · 8 mentions · first linked 2019-03-14
- API gateway pattern for microservices6 people · 7 mentions · first linked 2014-11-07
- What Are Microservices?4 people · 4 mentions · first linked 2020-05-29
- /patterns/data/cqrs.html3 people · 3 mentions · first linked 2019-08-14
- Patterns of Microservice Architecture3 people · 3 mentions · first linked 2015-12-28
- A pattern language for microservices2 people · 2 mentions · first linked 2016-11-29
- /patterns/refactoring/strangler-application.html2 people · 2 mentions · first linked 2021-02-19
- /patterns/data/database-per-service.html2 people · 2 mentions · first linked 2022-05-09
- /patterns/microservice-chassis.html2 people · 2 mentions · first linked 2021-02-18
What Hacker News says?
https://microservices.io/patterns/data/saga.html
Comment linking /patterns/data/saga.html
on “Give Me Back My Monolith”Submitted A pattern language for microservices as a story · 207 points
HN discussionWe are in the middle of the first production-scale deployment of a greenfield microservice-based application now and there are certainly a lot of pain points. On the flip side, I've been a part of about half a dozen extremely successful strangler migrations[0], some of which were downright easy even with a complicated business domain. I often wonder if we would have been better off deploying a monolith in half the t…
Comment linking /patterns/refactoring/strangler-application.html
on “Monolith First (2015)”Submitted LLMs: Our future overlords are hungry and thirsty § as a story · 3 points
HN discussionIf your application is stateless following your definition then it's trivial to break the monolith down to microservices that focus on a bounded contexts while sharing a common db. This is a very well known microservices pattern. https://microservices.io/patterns/data/shared-database.html
Comment linking /patterns/data/shared-database.html
on “New Grad vs. Senior Dev”Submitted API Gateway Pattern as a story · 3 points
HN discussionThis seems appropriate... https://microservices.io/
Comment linking /
on “Why is Kubernetes getting so popular?”Submitted Microservice Architecture pattern as a story · 3 points
HN discussionIt's industry best practice -- not a joke. What's more, the recommendation is to have a separate database per service -- one table, one service, one database. Fuethermore, when a join is desired, the best practice is to implement not just a service that joins the data but maintains it in a table/materialized view of its own, along with a message server such as Kafka. The services responsible for the tables to be joi…
Comment linking /patterns/data/saga.html
on “Choose Boring Technology (2015)”Submitted Microservice architecture patterns and best practices as a story · 3 points
HN discussionThere are bunch of them, really. But for general structure, using your end-user's user experience path (from start to end) as a guide and avoiding buzzwords as much as you can usually help. Think of Stripe's documentation, you want something as easily digestible as that. - Software Design Patterns: https://en.wikipedia.org/wiki/Software_design_pattern - Azure Application Architecture Guide: https://docs.microsoft.co…
Comment linking /patterns/index.html
on “Ask HN: Are there any openly available software architecture documents?”Submitted API gateway pattern for microservices as a story · 3 points
HN discussionAnother way to add a fast, distributed rate-limiting on top of your APIs is by using an API Gateway [1] like the open-source Kong [2]. This pattern is becoming a standard since it saves time from re-implementing and duplicating the same rate limiting logic in each backend microservice. [1] http://microservices.io/patterns/apigateway.html [2] https://getkong.org/plugins/rate-limiting/
Comment linking /patterns/apigateway.html
on “Scaling your API with rate limiters”Submitted Assemblage – a microservice architecture definition process as a story · 2 points
HN discussionThe API gateway approach has a lot of the upsides you mention: 1. http://microservices.io/patterns/apigateway.html 2. https://getkong.org/ (a few auth plugins) 3. https://github.com/auth0/nginx-jwt / https://www.stavros.io/posts/writing-an-nginx-authentication...
Comment linking /patterns/apigateway.html
on “Why the Elixir language has great potential”Submitted What Are Microservices? as a story · 2 points
HN discussionGateway APIs: http://microservices.io/patterns/apigateway.html Assuming you've read that then I'd add the following. If you don't have something approaching a gateway, you're probably doing a big disservice to your users (assuming clients fetch data via API, rather than using a traditional render-on-the-server framework like Django or Rails). The value proposition of GraphQL is based on the assumption you're already…
Comment linking /patterns/apigateway.html
on “gRPC-Web: Moving past REST+JSON towards type-safe Web APIs”Submitted Circuit Breaker in Microservices as a story · 2 points
HN discussionA workflow manager implements a Choreography based saga pattern https://microservices.io/patterns/data/saga.html
Comment linking /patterns/data/saga.html
on “Maestro: Netflix's Workflow Orchestrator”Submitted The Transactional Outbox Pattern as a story · 2 points
HN discussion> Once the code for all destinations lived in a single repo, they could be merged into a single service. With every destination living in one service, our developer productivity substantially improved. We no longer had to deploy 140+ services for a change to one of the shared libraries. One engineer can deploy the service in a matter of minutes. This is the problem with the undefined nature of the term `microservice…
Comment linking /post/architecture/2022/05/04/microservice-architecture-essentials-deployability.html
on “Why Twilio Segment moved from microservices back to a monolith”Submitted Patterns of Microservice Architecture as a story · 2 points
HN discussionI'm not super familiar with Datasette but to a certain extent it does seem like you already implemented some sort of sqlite daemon over http? Is it fair to say Datasette is "like postgrest but for sqlite"? When I was thinking of using sqlite for bg jobs that's the kind of thing I wanted to avoid, but maybe you are already there :-) In case it helps, I've been investigating bg jobs too and saw a bunch of resources th…
Comment linking /patterns/data/transactional-outbox.html
on “Distributed SQLite: Paradigm shift or hype?”Submitted Microservice Architecture as a story · 2 points
HN discussionA fair point. If you do need an external queue for any reason (legacy/already have one, advanced routing semantics, integrations for external stream processors, etc.) the "Transactional Outbox" pattern provides a way to have your cake and eat it too here--but only for produce operations. In this pattern, publishers write to an RDBMS table on publish, and then best-effort publish to the message broker after RDBMS tra…
Comment linking /patterns/data/transactional-outbox.html
on “Show HN: An SQS Alternative on Postgres”Submitted Serverless deployments as a story · 2 points
HN discussionI've watched a presentation where (I think) Linkedin talked about their use of node.js. They used it as an API Gateway ( http://microservices.io/patterns/apigateway.html ). The main requirements for this are making a lot of service calls quickly and transforming several JSON documents into a single JSON response. Node.js is actually pretty reasonable for this.
Comment linking /patterns/apigateway.html
on “Yahoo Mail moving to React”Submitted Micro-services patterns as a story · 2 points
HN discussionhttps://microservices.io/patterns/data/transactional-outbox.... It allows you to wrap it all in a transaction. If you separate a database update and insertion into a queue, whichever happens second may fail, while the first succeeds.
Comment linking /patterns/data/transactional-outbox.html
on “Postgres as queue”Submitted Designing an architecture using dark matter and dark energy as a story · 1 points
HN discussion