O'Reilly logo
live online training icon Live Online training

Microservice collaboration

Events, sagas, and schemas

Sam Newman

You’ve probably seen plenty of box-and-arrow diagrams when looking at microservice architectures, but what’s behind those lines? Find out by joining Sam Newman in a hands-on three-hour course that explores the nature of service-to-service calls.

Since the array of technology choices in this space is vast, Sam begins by sharing a model for thinking of service-to-service collaboration. He then covers some of the technology choices that fit into this model, including newer interaction models enabled by Kafka and service meshes. You'll learn how to implement business processes through sagas—in other words, how to manage all those individual service calls and make them part of something more. Along the way, expect discussion about schemas, serialization formats, messaging patterns, and maybe even some BPM.

What you'll learn-and how you can apply it

By the end of this live, hands-on, online course, you’ll understand:

  • The nuances of the different styles of service-to-service communication
  • How to manage the collaboration of multiple services to implement cross-cutting business processes
  • Why picking the right technology can be key in helping avoid tight coupling between services

And you’ll be able to:

  • Better decide what sort of communication protocol works best for your use case
  • Understand why you may want to mix and match different styles of communication
  • Apply what you’ve learned to new technologies as they arise

This training course is for you because...

  • You need to make sense of all the different options out there for microservice architectures.
  • You work with asynchronous technology like Kafka and want to know how to get the best out of it.
  • You want to build architectures that don’t become tightly coupled distributed monoliths.

Prerequisites

  • A basic understanding of microservices

Recommended preparation:

Take Microservice fundamentals (live online training course with Sam Newman) (useful but not required)

Recommended follow-up:

About your instructor

  • Sam Newman is a technologist at ThoughtWorks, where he currently splits his time between encouraging and sharing Innovation globally and helping design and build their internal systems. He has worked with a variety of companies in multiple domains around the world, often with one foot in the developer world, and another in the IT operations space. If you asked him what he does, he’d say “I work with people to build better software systems.” He has written articles, presented at conferences, and sporadically commits to open source projects. He is the author of Building Microservices.

Schedule

The timeframes are only estimates and may vary according to how the class is progressing

From method calls to service calls (30 minutes)

  • Poll: Are you actively using microservices?
  • Lecture: How method calls and service calls vary; performance and error handling; why mapping directly from method calls to service calls can be dangerous
  • Q&A

A model for microservices collaboration (45 minutes)

  • Poll: Which communication technologies do you use?
  • Lecture: Synchronous and asynchronous integration; request/response versus event-based collaboration; a model for selecting different technologies
  • Poll: What other technologies might you be interested in?
  • Break (10 minutes)

Breaking changes in a microservice architecture (30 minutes)

  • Poll: Have you experienced a situation where another service changed and it broke your software?
  • Lecture: How to roll out breaking contract changes while ensuring you have independent deployability; supporting ideas like schemes and consumer-driven contracts
  • Q&A
  • Break (10 minutes)

Sagas (45 minutes)

  • Lecture: Sagas—the answer to having lots of services collaborate to perform complex business processes; the generic saga pattern; how it can be implemented using a choreographed or orchestrated style

Wrap-up and Q&A (10 minutes)