All Software Architecture, All the Time
June 10-13, 2019
San Jose, CA
Please log in

Developing microservices

Chris Richardson (Eventuate)
Monday, June 10 & Tuesday, June 11,
9:00am - 5:00pm
Location: 212 C
Average rating: ****.
(4.80, 5 ratings)

Participants should plan to attend both days of training course. Note: to attend training courses, you must be registered for a Platinum or Training pass; does not include access to tutorials on Tuesday.

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:

  • Create 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

Picture of Jason Perdue
Jason Perdue | SPEAKER MANAGER
06/10/2019 5:26am PDT

We do not usually post any materials for 2-day trainings. If you are in this class, you can talk the instructor about getting the materials.

Wesam Qaqish | DIRECTOR OF ENGINEERING
06/10/2019 5:21am PDT

Where can i find the material? Download Material doesn’t show anything.

Sadiel Blanco |
05/01/2019 12:15am PDT

Is there any prerequisite? Programming Language? Framework?

Thank you!

Jacky Chee |
04/23/2019 10:14am PDT

What kind of tools/technology (ex. Spring Boot) that you are going to use? Is there any prerequisite for this training?

Picture of Chris Richardson
Chris Richardson | SOFTWARE ARCHITECT
04/18/2019 9:11am PDT

Yes. There are on-paper architecture exercises.

Picture of Vikram Borra
Vikram Borra | SOLUTIONS ARCHITECT
04/18/2019 12:24am PDT

Is this a hands-on training?