Engineering the Future of Software
Feb 3–4, 2019: Training
Feb 4–6, 2019: Tutorials & Conference
New York, NY

Developing microservices

Chris Richardson (Eventuate)
Sunday, February 3 & Monday, February 4, 9:00am - 5:00pm
Location: Concourse C
Average rating: ****.
(4.50, 2 ratings)

Participants should plan to attend both days of this 2-day training course. Platinum and Training passes do not include access to tutorials on Monday.

Enterprises need to deliver better software faster. The microservice architecture has the testability and deployability necessary for DevOps. Chris Richardson walks you through using the microservice architecture to develop your applications, exploring key obstacles you'll face (and how to deal with them) and sharing strategies for refactoring a monolith to a microservice architecture.

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

By the end of this two-day training course, you'll understand:

  • The essential characteristics of the microservice architecture, its benefits and drawbacks, and when to use it
  • Distributed data management patterns
  • Effective microservice testing strategies
  • Deployment options for microservices
  • Strategies for refactoring a monolithic application to a microservice architecture

And you’ll be able to:

  • Architect an application as a set of microservices
  • Use sagas to maintain data consistency
  • Implement queries that span services
  • Test microservices
  • Refactor a monolith to services

Enterprises need to deliver better software faster. It’s no longer sufficient to release quarterly or even monthly. Instead, organizations must use methods such as DevOps to frequently deploy changes into production, perhaps as often as multiple times per day. However, one obstacle to DevOps-style development is that organizations are often mired in monolithic hell. Key business applications are large, complex, unwieldy monoliths, so it’s impossible to rapidly and safely deploy changes. The solution is to adopt the microservice architecture—an architectural style that has the testability and deployability necessary for DevOps.

Through a combination of lectures, discussions, and kata exercises, Chris Richardson walks you through using the microservice architecture to develop your applications. You’ll learn how to deal with some of the key obstacles you’ll face, including distributed data management, and discover strategies for refactoring a monolith to a microservice architecture.

Outline

Day 1

Overview of the microservice architecture

  • The microservice architecture as an architectural style
  • Benefits and drawbacks of microservices
  • The microservice pattern language

Decomposition

  • Overview of decomposition
  • Decompose by business capabilities
  • Decompose by bounded context
  • Service design guidelines

Maintaining data consistency

  • Overview
  • Maintaining consistency using sagas
  • Coordinating sagas
  • Countermeasures for data anomalies

Querying

  • Overview
  • Using the API composition pattern
  • Using the CQRS pattern

Day 2

Interprocess communication

  • Overview of  interservice and external communication
  • Using an API gateway
  • Service discovery

Testing strategies

  • Introduction to the testing pyramid
  • Writing consumer-driven contract tests
  • Developing component tests
  • Developing end-to-end tests

Overview of deployment patterns

  • Multiple services per host
  • Service per VM
  • Service per container
  • Serverless deployment

Refactoring

  • Incrementally refactoring a monolith into microservices
  • Strategy 1: Stop digging
  • Strategy 2: Split frontend and backend
  • Strategy 3: Extract services

About your instructor

Photo of Chris Richardson

Chris Richardson is a developer and architect. He is a Java Champion, a JavaOne Rock Star, and the author of POJOs in Action, which describes how to build enterprise Java applications with frameworks such as Spring and Hibernate. Chris was also the founder of the original CloudFoundry.com, an early Java PaaS for Amazon EC2. Today, he is a recognized thought leader in microservices and speaks regularly at international conferences. Chris is the creator of Microservices.io, a pattern language for microservices, and is writing the book Microservice Patterns, which is available as a Manning MEAP. He provides microservices consulting and training to organizations that are adopting the microservice architecture and is working on his third startup Eventuate, an application platform for developing transactional microservices.

Twitter for crichardson

Conference registration

Get the Platinum pass or the Training pass to add this course to your package.

Comments on this page are now closed.

Comments

Chris Richardson | SOFTWARE ARCHITECT
01/30/2019 9:28am EST

Yes.
The focus of the workshop is architecture and design.
There are on-paper architecture and design exercises (katas).

Faten Afifi | SOFTWARE SECTION MANAGER
01/30/2019 9:23am EST

Is this training include hands-on sessions?

Gabi Beyo | PRINCIPAL ENGINEER
11/19/2018 11:09pm EST

Is the training includes hands-on sessions?
Is the training suited also for experienced developers?