How to Implement SOA

Series of posts, in a single place

Here is a list of my posts about implementing SOA.

First, these are the theoretical basics.

  1. Why should you split a monolith? I guess you already know why, but just to refresh.
  2. Wrong Ways of Defining Service Boundaries. There are plenty of them, and they are really widespread.
  3. What Characteristics My Services Should Possess
  4. How to Define Service Boundaries. That’s the crux of the whole series.

The next post is for DDD-practitioners about how to define a bounded context: DDD Strategic Patterns: How To Define Bounded Contexts.

After that, what to watch out for the most when implementing concrete services: Why Microservices Fail.

Then, some examples.

  1. Example of Service Boundaries Identification, in payment service provider’s area. This post contains some thoughts on scaling, sagas, aggregate boundaries, composite UI and CQRS.
  2. Service boundaries identification example in e-commerce. More common area, with some tips on correct boundaries identification.
  3. Event-Driven Architecture Implementation. That’s more lower-level example, with RabbitMQ specifics.