Topic hierarchy
Note: tagging is work-in-process
- application architecture
- deployment
- development
- microservices adoption
- microservicesio updates
- pattern
- service collaboration
- service design
Index of all content
This site contains 342 items of content. Here they are sorted by title.
- #becauseItDepends Finding your inner Vulcan: unemotional decision making with pattern-style thinking
- 10 years of ‘microservices’
- 497K views and countingtitle: 497K views and counting: My DockerCon 2016 talk - Microservices + Events + Docker = A Perfect Trio#58; My DockerCon 2016 talk - Microservices + Events + Docker = A Perfect Trio
- A better way to think about developer productivity metrics
- A glossary of microservice architecture terms
- A great trilogy by Mark Schwartz (@schwartz_cio) - War and Peace and IT, A Seat at the Table, and The Art of Business Value
- A pattern language and visual notation for messaging systems: Enterprise integration patterns by @ghohpe and @bobby_woolf
- A pattern language for microservices
- A tour of two sagas
- About dark energy and dark matter: forces that shape an architecture
- About microservices.io
- Adding the password grant type to Spring Authorization Server
- Adopt the microservice architecture
- Ancient lore: Lehman’s laws of software evolution
- Andorian development principles and practices
- Announcing Faramir: an LLM-powered microservice for validating phone numbers
- Announcing Microservices.io Premium
- Announcing the first virtual bootcamp - distributed data patterns in a microservice architecture
- Announcing the first virtual bootcamp: distributed data patterns in a microservice architecture
- Anti-pattern: microservices as the goal
- API gateway pattern added
- Architecting microservices for fast, sustainable flow
- Architecting monoliths for fast, sustainable flow
- Architectural patterns for modular monoliths that enable fast flow
- Architecture is multi-dimensional
- Assemblage overview: Part 1 - Defining system operations
- Assemblage overview: Part 2 - Defining subdomains
- Assemblage overview: Part 3 - What’s a service architecture?
- Assemblage overview: step 3 - defining a service architecture
- August 29th: public designing a microservice architecture workshop in APAC (GMT+9) timezone
- Beer and tacos and the metaphorical origins of Docker containers
- Big decisions: should you migrate to microservices? Part 1
- Books about high-performance software delivery: DevOps Handbook + Team Topologies + Accelerate + Microservices Patterns
- Books you should read - Why we sleep
- Building a multi-architecture Docker image for Apache Kafka
- Building multi-architecture Docker images for Intel and ARM
- Clarifying architecture with Service Blueprints: system operations
- Clarifying architecture with Service Blueprints: system operations + entities
- CodeFreeze 2018 - There is no such thing as a microservice!
- Configuring a CircleCI pipeline that builds a multi-architecture Docker image that runs on an Arm-based Apple M1 MacBook
- Configuring a CircleCI-based pipeline to build multi-architecture Docker images
- Configuring CircleCI to build, test and publish multi-architecture images for Eventuate Common
- Configuring CircleCI to publish a multi-architecture Docker image
- Considering Migrating a Monolith to Microservices? A Dark Energy, Dark Matter Perspective
- Contact
- Contact
- Containers, the developer workflow and the test pyramid
- Conversations about Software Engineering podcast: Service Templates and Service Chassis
- CxOs neglect architecture at their peril
- Dark energy force: fast deployment pipeline
- Dark energy force: multiple technology stacks
- Dark energy force: segregate by characteristics
- Dark energy force: simple components
- Dark energy force: team autonomy
- Dark energy, dark matter and microservice architecture collaboration patterns
- Dark matter force: efficient interactions
- Dark matter force: minimize design-time coupling
- Dark matter force: minimize runtime coupling
- Dark matter force: prefer ACID over BASE
- Dark matter force: simple interactions
- DDD, necessary but insufficient: physical design principles for microservices
- Decompose your monolith: Six principles for refactoring a monolith to microservices
- Decompose Your Monolith: Strategies for Migrating to Microservices
- Decompose your monolith: Ten principles for refactoring a monolith to microservices
- Deploying microservices: the path from laptop to production
- Designing an architecture using dark matter and dark energy
- Designing loosely coupled services
- Designing loosely coupled services
- Developing the Eventuate Common library on an M1/Arm MacBook
- Did you refactor a monolith to microservice? How did it go?
- Dissecting ‘architecting for fast, sustainable flow’
- Do your architects actually work on architecture?
- Documenting a service using the microservice canvas
- Eliminating tedium with OpenRewrite
- End of January discounts for my Microservices book and bootcamp
- Enrollment is now open for the beta of distributed data patterns for microservices virtual bootcamp
- Enrollment is now open for the distributed data patterns for microservices virtual bootcamp
- Essential characteristics of the microservice architecture: independently deployable
- Essential characteristics of the microservice architecture: loosely coupled
- Event Sourcing + CQRS example microservices
- Events on the outside, on the inside and at the core
- Events to the rescue: solving distributed data problems in a microservice architecture
- Evolving a microservice architecture using dark energy and dark matter forces
- Evolving a microservice architecture: how to right-size your services
- Evolving an architecture: a problem solving-driven approach
- Example of extracting a service from monolith
- ExploreDDD 2024 - DDD, necessary but insufficient: physical design principles for microservices
- ExploreDDD 2024 - Panel: The Crucial Intersection of DDD With LLMs
- Exploring transactional messaging in Oracle 23c Free - developer release
- Extracting the Delivery Service - Step 0, AS-IS architecture
- Extracting the Delivery Service - Step 1, Split the code
- Extracting the Delivery Service - Step 2, Split the database
- Extracting the Delivery Service - Step 3, Define standalone
Delivery Service
- Extracting the Delivery Service - Step 4, Using new
Delivery Service
- Extracting the Delivery Service - Step 5, Removing obsolete code from the monolith
- Fantastic presentation by Eric Evans on DDD and microservices
- Finding that special plus one for your architecture
- Four service collaboration patterns: implementing distributed operations
- GenAI application development - a Cynefin perspective
- GOTO Chicago presentation: Not Just Events - Developing Asynchronous Microservices
- GraalVM as pattern - work in progress
- Handling duplicate messages using the Idempotent consumer pattern
- How do you structure your traditional (non-modular) monolith applications?
- How modular can your monolith go? Part 1 - the basics
- How modular can your monolith go? Part 2 - a first look at how subdomains collaborate
- How modular can your monolith go? Part 3 - encapsulating a subdomain behind a facade
- How modular can your monolith go? Part 4 - physical design principles for faster builds
- How modular can your monolith go? Part 5 - decoupling domains with the Observer pattern
- How modular can your monolith go? Part 6 - transaction management for commands
- How modular can your monolith go? Part 7 - no such thing as a modular monolith?
- How to apply the pattern language
- I’m now a Team Topologies Advocate! 🎉
- Icebergs, the Interface Segregation Principle and microservices
- If the Service template and Microservice chassis are the solution, what is the problem?
- Implementing Faramir with Spring AI
- Interview about microservices with Koushik Kothagal (@Java_Brains)
- Introducing Assemblage - a microservice architecture definition process
- Is organizational unpreparedness a dark matter force?
- ISAQB 2024 - Enabling DevOps and Team Topologies Through Architecture: Architecting for Fast Flow
- iSAQB keynote - Modular monoliths and microservices: architectural patterns for rapid, reliable, frequent and sustainable development
- IT in the time of COVID-19 - the tale of three fictitious grocery stores
- Jfokus: Cubes, Hexagons, Triangles, and More: Understanding Microservices
- June 7th public microservice architecture workshop in APAC (GMT+9) timezone
- Just a reminder: picking the appropriate architecture for your application is a best practice.
- Keynote: Enabling DevOps and Team Topologies thru architecture: architecting for fast flow
- Latest updates to microservices.iotitle: Latest updates to microservices.io: new content and taggingcolon; new content and tagging
- LLMs: our future overlords are hungry and thirsty
- Local vs. cloud-based development
- Loose design-time coupling: part of the wiring of a winning organization
- Managing data consistency in a microservice architecture using Sagas - Implementing a choreography-based saga
- Managing data consistency in a microservice architecture using Sagas - Implementing an orchestration-based saga
- Managing data consistency in a microservice architecture using Sagas - part 1
- Managing data consistency in a microservice architecture using Sagas part 2 - coordinating sagas
- MicroCPH - Managing data consistency in a microservice architecture using Sagas
- Microservice Architecture Glossary
- Microservice chassis pattern
- Microservice deployment patterns
- Microservices - an architecture that enables DevOps
- Microservices adoption anti-pattern: Focussing on technology
- Microservices adoption anti-pattern: More the merrier
- Microservices adoption anti-pattern: Red flag law
- Microservices adoption anti-pattern: scattershot adoption
- Microservices adoption anti-pattern: Trying to fly before you can walk
- Microservices adoption anti-patterns: microservices are a magic pixie dust
- Microservices adoption antipatterns
- Microservices and monoliths are both mistakes - picking the appropriate architecture for your application is still a best practice
- Microservices anti-patterns in Melbourne
- Microservices articles
- Microservices Assessment Platform
- Microservices at Silicon Valley Code Camp
- Microservices at the @thekonginc Summit in September
- Microservices in other languages
- Microservices patterns
- Microservices Patterns - Now available in Russian and on Audible
- Microservices presentations
- Microservices resources
- Microservices rules #10: Make smaller, safer, and reversible changes - part 1
- Microservices rules #10: Make smaller, safer, and reversible changes - part 2
- Microservices rules #10: Make smaller, safer, and reversible changes - part 3
- Microservices rules #10: Make smaller, safer, and reversible changes - part 4
- Microservices rules: what good looks like
- Microservices rules: what good looks like - July 2024 edition
- Microservices workshop at Jfokus, Stockholm
- Microservices workshops in Chicago and Stockholm
- Microservices: the symphony
- Microservices: what does good look like?
- microXchg 2018 - Managing data consistency in a microservice architecture using Sagas
- Monolith to Microservices with Bite-Sized Kubernetes
- More on microservices anti-patterns
- Mucon - Not Just Events, Developing Asynchronous Microservices
- Mucon 2021 - Dark energy, dark matter: imperfect metaphors for designing microservices
- My Apple M1 MacBook: lots of cores, memory and crashing containers
- My new LiveProject Series: Deploying Services with Kubernetes
- My new Manning LiveProject: developing a service template and microservice chassis
- My new Windows 365 Cloud PC: Windows 11, Docker Desktop and WSL2
- My YOW! 2018 presentation: Events and Commands: Developing Asynchronous Microservices
- New #GotoChgo, #microcph conference talks on asynchronous microservices - implementing Sagas and CQRS
- New and revised microservices classes
- New article - Microservices rules #5: Deliberative design
- New book - Microservice patterns
- New microservices assessment feature - links to patterns
- New microservices pattern - Self-contained service
- New premium article - Big decisions: should you migrate your monolith to microservices? Part 2.
- New premium article: a service exists to solve problems
- New premium article: thoughts about service granularity
- New premium post: Building a business case for reducing technical debt
- New premium post: Doing more with less, part 1: Improving the developer experience
- New premium post: Doing more with less, part 2 - Buy don’t build using DDD
- New premium post: Doing more with less, part 3 - Buy don’t build using Wardley Mapping
- New premium post: Microservices rules #2: Fast deployment pipeline
- New premium post: Prevent descent into unmaintainable hell by tracking and improving the DevEx metrics
- New premium post: Prevent descent into unmaintainable hell by tracking and improving the DORA metrics
- New saga article - implementing orchestration-based sagas
- New video: Cubes, Hexagons, Triangles, and More: Understanding the Microservice Architecture Through Shapes
- OMG are you still using Rational Rose?
- One day microservices class in Oakland, CA
- Online microservices workshops, virtual bootcamps and remote consulting
- Oracle Code One - Events and commands, developing asynchronous microservices
- Pattern: A pattern language for microservices
- Pattern: Microservice Architecture pattern
- Pattern: Pattern: 3rd Party Registration
- Pattern: Pattern: Access token
- Pattern: Pattern: Aggregate
- Pattern: Pattern: Anti-corruption layer
- Pattern: Pattern: API Composition
- Pattern: Pattern: API Gateway / Backends for Frontends
- Pattern: Pattern: Application metrics
- Pattern: Pattern: Audit logging
- Pattern: Pattern: Circuit Breaker
- Pattern: Pattern: Client-side service discovery
- Pattern: Pattern: Client-side UI composition
- Pattern: Pattern: Command Query Responsibility Segregation (CQRS)
- Pattern: Pattern: Command-side replica
- Pattern: Pattern: Consumer-side contract test
- Pattern: Pattern: Database per service
- Pattern: Pattern: Decompose by business capability
- Pattern: Pattern: Decompose by subdomain
- Pattern: Pattern: Distributed tracing
- Pattern: Pattern: Domain event
- Pattern: Pattern: Domain-specific protocol
- Pattern: Pattern: Event sourcing
- Pattern: Pattern: Event-driven architecture
- Pattern: Pattern: Exception tracking
- Pattern: Pattern: Externalized configuration
- Pattern: Pattern: Health Check API
- Pattern: Pattern: Idempotent Consumer
- Pattern: Pattern: Log aggregation
- Pattern: Pattern: Log deployments and changes
- Pattern: Pattern: Messaging
- Pattern: Pattern: Microservice chassis
- Pattern: Pattern: Monolithic Architecture
- Pattern: Pattern: Multiple service instances per host
- Pattern: Pattern: Polling publisher
- Pattern: Pattern: Publish events using database triggers
- Pattern: Pattern: Remote Procedure Invocation (RPI)
- Pattern: Pattern: Saga
- Pattern: Pattern: Self Registration
- Pattern: Pattern: Server-side page fragment composition
- Pattern: Pattern: Server-side service discovery
- Pattern: Pattern: Serverless deployment
- Pattern: Pattern: Service Component Test
- Pattern: Pattern: Service deployment platform
- Pattern: Pattern: Service instance per container
- Pattern: Pattern: Service Instance per VM
- Pattern: Pattern: Service Integration Contract Test
- Pattern: Pattern: Service mesh
- Pattern: Pattern: Service registry
- Pattern: Pattern: Service Template
- Pattern: Pattern: Shared database
- Pattern: Pattern: Sidecar
- Pattern: Pattern: Single Service Instance per Host
- Pattern: Pattern: Strangler application
- Pattern: Pattern: Transaction log tailing
- Pattern: Pattern: Transactional outbox
- Pattern: Self-contained service
- Pattern: Service per team
- PLoP: the gathering of the patterns community
- Potholes in the road from monolithic hell - Microservices adoption anti-patterns
- Premium post: making sure that buying is really better than building
- Premium post: There’s more to a microservice architecture than services
- Presentation - Solving distributed data management problems in a microservice architecture
- Public architecting for fast, sustainable flow workshops in September 2024
- Public microservices training in Stockholm, May 8th and 9th
- Public microservices training in the Netherlands, May 15th and 16th
- Publishing a multi-architecture Docker image for the Eventuate CDC service
- Publishing multi-architecture base images for services
- QConPlus 2021: Takeout burritos and minimizing design-time coupling in a microservice architecture
- QCONSF 2017 presentation - ACID Is So Yesterday, Maintaining Data Consistency with Sagas
- QCONSF 2022: Dark Energy, Dark Matter and the Microservices Patterns?!
- Redisconf 2019 microservice architecture workshop
- Reducing insider trading in a microservice architecture
- Refactoring a monolith to microservices
- Revised data patterns
- Revised patterns - Microservice Chassis and Service Template
- Scripting with JBang instead of Python
- Self-documenting services: generating a microservice canvas
- Service blueprints: creating a shared understanding of your architecture
- Service discovery patterns
- Services + End-to-End Testing = ?
- Slides for my #devnexus talk - Decompose your monolith
- Slides for my Oracle CodeOne 2019 talk - Decompose Your Monolith - Strategies for Migrating to Microservices
- Slides for my Oracle CodeOne 2019 talk - Descending the Testing Pyramid - Effective Testing Strategies for Microservices
- Slides for my YOW! Perth and Singapore - Cubes, Hexagons, Triangles, and More - Understanding the Microservice Architecture Through Shapes
- STOP hurting yourself by doing big bang modernizations!
- Techlead Journal Podcast - Principles for Adopting Microservices Successfully
- Testing an Intel and Arm multi-architecture Docker image on CircleCI
- Testing microservices (Work in progress)
- The Chinese translation of Microservices Patterns
-
[ The Confident Commit podcast Episode 6: Architecture meets delivery ](/post/microservices/2021/07/27/circleci-confident-commit-podcast.html) - The developer’s essential knowledge pyramid
- The Eventuate Tram Customers and Orders example now runs on Arm/M1 MacBook!!
- The evolution of the Microservice Architecture pattern language
- The evolution of the success triangle: microservices as the enabler of DevOps and team topologies
- The FTGO application and the Database per service pattern
- The geometry of microservices - cubes, hexagons, triangles, and more
- The Japanese edition of Microservices Patterns
- The launch status check: a great example of loose design-time coupling
- The Microservice Architecture Assessment
- The Microservice Architecture Assessment is now available
- The microservice architecture is meant to simplify and accelerate development, but only when done correctly
- The microservice architecture: enabling rapid, reliable, frequent and sustainable development
- The Microservices Assessment Platform is generally available
- The Microservices assessment platform now supports organizations
- The pattern format: an antidote to hype
- The progress principle: the key to improving productivity and job satisfaction
- The Scale Cube
- The Strangler Fig application pattern: incremental modernization to microservices
- The success triangle reinterpreted: it’s all about fast flow
- The YOW conferences in Perth, Hong Kong, and Singapore
- There is no such thing as a microservice!
- This week in #microservices - April 7th 2014
- This week in #microservices - March 31st 2014
- Thoughts about team size
- Two more anti-patterns of microservices adoption
- Understanding an architecture: part 1 - system context
- Understanding an architecture: part 2 - user stories and scenarios
- Upcoming architecture workshops and talks in Europe in November 2024
- Upcoming public architecture workshops
- Upcoming public training - Microservices at UMN, Minneapolis in January
- Upcoming workshops at O’Reilly Software Architecture New York and GOTO Chicago
- Updated microservice architecture presentations
- Using GenAI (Github Copilot) to build a GenAI service
- Using patterns and pattern languages to make better architectural decisions
- Using scenarios to reinvigorate your microservice architecture
- Webinars on Spring Boot, Cloud Foundry, and Microservices
- Welcome to Microservices!
- What’s a service - part 1?
- What’s new with #microservices - July 28, 2015: integration platforms, new article on microservices and IPC
- What’s new with #microservices - June 23, 2015: @crichardson and microservices training
- What’s new with #microservices - June 6, 2015: @martinfowler, @crichardson, @adrianco
- What’s new with #microservices - May 12th 2014
- What’s new?
- When to use the microservice architecture: part 1 - the need to deliver software rapidly, frequently, and reliably
- When to use the microservice architecture: part 5 - the monolithic architecture and rapid, frequent, reliable and sustainable software delivery
- Why microservices - part 3: two thirds of the success triangle - process and organization
- Why microservices - part 4: the last third of the success triangle: architectural requirements for rapid, frequent, reliable and sustainable development
- Why microservices: part 2 - the need for sustainable development
- Work smarter, not longer: Embrace fast flow
- Working in a high-performance organization
- Writing better problem reports: 6 essential details
- Writing better problem reports: 6 essential details
- YOW 2018 conference presentation