microservice architecture

15
Microservice Architecture Slim Ouertani

Upload: slim-ouertani

Post on 29-Jul-2015

337 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: Microservice architecture

Microservice Architecture

Slim Ouertani

Page 2: Microservice architecture

Agenda

● Introduction● Definition● Conclusion

2

Page 3: Microservice architecture

Introduction

● Agile● DevOps● Continuous Deployment● Cloud● Design for failure● Containers

3

Page 4: Microservice architecture

Common characteristics

● Componentization via Services● Products not Projects.● Smart endpoints and dumb pipes (anti-ESB)● Decentralized Governance● Decentralized Data Management● Infrastructure Automation● Design for failure

4

Page 5: Microservice architecture

Monoliths Vs Microservices

5

Page 6: Microservice architecture

Default organisation

6

Page 7: Microservice architecture

Organized around Business Capabilities

7

Page 8: Microservice architecture

Products not Projects● Microservice proponents tend to avoid the project model, preferring

instead the notion that a team should own a product over its full lifetime.

● A common inspiration for this is Amazon's notion of "you build, you run it" where a development team takes full responsibility for the software in production. This brings developers into day-to-day contact with how their software behaves in production and increases contact with their users, as they have to take on at least some of the support burden.

8

Page 9: Microservice architecture

Smart endpoints and dumb pipes● The microservice community favours an alternative

approach: smart endpoints and dumb pipes. Applications built from microservices aim to be as decoupled and as cohesive as possible

● Choreographed using simple RESTish protocols rather than complex protocols such as WS-Choreography or BPEL or orchestration by a central tool.

9

Page 10: Microservice architecture

Design for failure

● Stateless● Resilience● Event based

10

Page 11: Microservice architecture

Evolutionary Design

Smaller, modular services enable more frequent releases and more change overall.

11

Page 12: Microservice architecture

Cons

● Operations overhead● Needs of automation● More operations overhead● DevOps Skills and Tech knowledge● Governance and increase in integration

testing

12

Page 13: Microservice architecture

Thanks

13

Page 14: Microservice architecture

14

Page 15: Microservice architecture

Not covered

● Decentralized Governance● Decentralized Data Management● Infrastructure Automation

15