7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of...

12
The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo LOPUG November 2014

Transcript of 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of...

Page 1: 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of Microservices - LOPUG.pdf · The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo

The 7 Deadly Sins of Microservices

Tareq Abedrabbo - OpenCredo LOPUG November 2014

Page 2: 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of Microservices - LOPUG.pdf · The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo

Why microservices anti-patterns?

Page 3: 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of Microservices - LOPUG.pdf · The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo

Microservices

Design Principles

Tools

Decoupling Separation of concerns Encapsulation

Engineering Practices

Spring Boot

RabbitMQHystrix

Automation

Scalability Fault-tolerance

Continuous Delivery

Testing

Dropwizard Config Management

Page 4: 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of Microservices - LOPUG.pdf · The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo

1. The Enterprise-OSGI-Application-Service-Bus

Building the wrong thing

Page 5: 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of Microservices - LOPUG.pdf · The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo

2. Porcine CosmeticsFailing to adopt a contract-first design approach

Page 6: 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of Microservices - LOPUG.pdf · The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo

3. Message in a BottleAssuming the wrong communication protocol

Page 7: 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of Microservices - LOPUG.pdf · The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo

4. The Single Domain of FailureIntroducing a shared domain model

Page 8: 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of Microservices - LOPUG.pdf · The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo

5. The Distributed MonolithDefining inappropriate service boundaries

Page 9: 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of Microservices - LOPUG.pdf · The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo

6. The Horseless CartNeglecting DevOps and Testing Concerns

Page 10: 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of Microservices - LOPUG.pdf · The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo

7. The Sausage FactoryDisregarding the Human Factor

Page 11: 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of Microservices - LOPUG.pdf · The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo

Links

• http://bit.ly/microservices-antipatterns

• OpenCredo: http://www.opencredo.com/blog/

• Twitter: @tareq_abedrabbo

Thank you! questions?

Page 12: 7 Deadly S of Microservices - files.meetup.comfiles.meetup.com/3531972/7 Deadly Sins of Microservices - LOPUG.pdf · The 7 Deadly Sins of Microservices Tareq Abedrabbo - OpenCredo

Credits

• https://unsplash.com/

• The horseless cart: https://www.flickr.com/photos/ellesmerefnc/4249596803/

• Message in a bottle: https://www.flickr.com/photos/rpenalozan/5128413528