Is Microservices gaining momentum? Looking at the interest in microservices in Australia at the moment, it is evident that this is a Service Oriented Architecture making waves.
I shared our insights and experiences to over 500 interested attendees at completely sold out YOW! nights events across Sydney, Brisbane and Melbourne. These talks revealed the core lessons ThoughWorkers have learnt building a variety of systems with Microservices architecture globally. They aimed to help viewers identify Microservices and their counterparts; guide them on where to use Microservices; and deliver a series of practices for technologists to build, test, deploy and operate a Microservices architecture.
The world of software architecture is excited and energised with the promises of a new Service Oriented Architecture, Microservices; rapid deployment, scalability, autonomy, and faster cycles of experimentation and innovation, and we are too!
3. WHAT IS A MICROSERVICES ARCHITECTURE?
Post-continuous
delivery SOA
4. WHAT IS A MICROSERVICES ARCHITECTURE?
Post-continuous
delivery SOA
Fine-grained
domain capability
5. WHAT IS A MICROSERVICES ARCHITECTURE?
Post-continuous
delivery SOA
Fine-grained
domain capability
Independently
releasable
6. WHAT IS A MICROSERVICES ARCHITECTURE?
Post-continuous
delivery SOA
Fine-grained
domain capability
Independently
releasable
Language agnostic
integration
57. SCOTT’S
STORY
A NEW DOMAIN VIEW
Global Assignee Tax Services MELBOURNE
31
58. History is the version of past events that
people have decided to agree upon.
- Napoleon Bonaparte
32
59. THE EVOLUTION OF MODELLING THE DOMAIN
33
Entity centric
e.g. Customer
Entity centric
e.g. Credit
60. THE EVOLUTION OF MODELLING THE DOMAIN
33
Entity centric
e.g. Credit
Activity centric
e.g. Purchase
Entity centric
e.g. Customer
61. THE EVOLUTION OF MODELLING THE DOMAIN
33
Entity centric
e.g. Credit
Activity centric
e.g. Purchase
Entity centric
e.g. Customer
Aggregator centric
e.g. Notification board
Search everywhere
Reports
62. THE EVOLUTION OF MODELLING THE DOMAIN
33
Entity centric
e.g. Credit
Activity centric
e.g. Purchase
Entity centric
e.g. Customer
Aggregator centric
e.g. Notification board
Search everywhere
Reports
63. DOMAIN EVENTS AS FIRST CLASS CITIZENS
DOMAIN EVENT
Time {t}, CustomerRegistered, …
Time {t}, CreditDebited, …
Time {t}, OrderPlaced, …
(1) Publisher-
Subscriber
(2) RESTful
Event
endpoints
F
Build future
capabilities
e.g.
gamification
65. SERVICE COMPOSITION
Leave composition to the one with most context
Expose finer-grained operations
Composition of Sync and Async is hard , try
Reactive programming
JavaScript Promises, RxJava Observables
36
68. TAKE-AWAYS
KNOW YOUR PROBLEM & DOMAIN WELL
TRADE-OFF COMPLEXITIES CAREFULLY
IT’S AN ORGANISATIONAL AND CULTURAL SHIFT
EVOLVE FROM MACRO TO MICRO
BUILD FOR CONTINUOUS DELIVERY FROM DAY 0
MAKE SURE YOU ARE TALL ENOUGH ☺