Moving to Microservices: Using Domain-Driven Design to Break Down the Monolith

Moving to Microservices: Using Domain-Driven Design to Break Down the Monolith

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 1h 09m | 403 MB

Agile practices and techniques, such as continuous delivery, are about being able to react to changes rapidly. However, putting them into practice when you have a big monolith application can be difficult. A microservice architecture offers one solution.

Breaking the monolith and moving toward a microservice architecture can offer significant advantages to organizations, in terms of improving team autonomy and increasing frequency of change. These benefits, however, come at a cost. Teams are not always aware of the additional complexity associated with distributed systems and the level of maturity and investment that organizations require to succeed with them.

In Moving to Microservices LiveLessons, Maria Gomez, a lead consultant at Thoughtworks, introduces considerations and best practices for moving to microservices. Gomez first defines the prerequisites for moving into a microservice architecture. She helps you understand the relative cost of the changes involved so that you can decide whether they are worth it for your organization. With step-by-step examples using domain-driven design (DDD) and other extreme programming (XP) techniques, she then demonstrates how to break down your existing monolith into independent, cooperating entities.

Learn How To

  • Assess whether a microservice architecture is right for your organization
  • Establish prerequisites for moving to microservices, including testing, automation, and continuous delivery
  • Identify and decouple contexts using domain-driven design and refactoring techniques
  • Extract your first microservice
Table of Contents

01 Moving to Microservices – Introduction
02 1.1 Defining microservices
03 1.2 Pros and cons of implementing a microservices architecture
04 1.3 Is a microservices architecture right for your organization
05 2.1 Testing
06 2.2 Automation and Continuous Delivery
07 2.3 Evolutionary architecture
08 2.4 Organizational change
09 3.1 Identify contexts
10 3.2 Decouple contexts
11 3.3 Extract your first microservice
12 3.4 Other dependencies
13 Moving to Microservices – Summary