Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Agile in a world of microservices

Agile in a world of microservices

Microservices are great - but if you are not careful you have just created a new set of silos. And response time is through the floor because a new service you have never heard of is hammering your app.The right tooling helps - but communication is even more important. This talk will discuss how to build the kind of culture you need to make micro services work.

Lisa van Gelder

January 28, 2016
Tweet

More Decks by Lisa van Gelder

Other Decks in Technology

Transcript

  1. Agile in a world of micro services How to have

    disparate apps in different languages with different datastores without going crazy
  2. How to tell when you have monolith pains • You

    have a release manager • It takes days/weeks to get a release ready • You don’t know which team just broke the site in production • Refactoring is hard because you break everyone else’s changes
  3. What is a micro service? • A bounded context -

    something with clear defined responsibilities • Deployed and hosted separately • With clear data ownership
  4. Where do you start? • Find your pain points. •

    Is one part causing performance issues? • Does one part need to scale faster? • Is one part going to change very rapidly? • Does one part always cause issues when deployed?
  5. The cms that made journalists stop work for 20 minutes…

    • db changes tied to code changes • unclear data ownership
  6. CAP theorem • Consistency (all services see the same data

    at the same time) • Availability (a guarantee that every request receives a response about whether it succeeded or failed) • Partition tolerance (the system continues to operate when some services are unavailable)
  7. Shared understanding on what happens when something goes wrong •

    error codes • kill switch • game days or the Simian Army
  8. Retrospective prime directive Regardless of what we discover, we understand

    and truly believe that everyone did the best job they could, given what they knew at the time, their skills and abilities, the resources available, and the situation at hand.
  9. Image credits • http://wall.alphacoders.com/big.php?i=121812 • http://eadesign-designisfun.deviantart.com/art/High-speed- city-167609421 • https://www.flickr.com/photos/woolner/4943166258/ •

    http://pixabay.com/en/brewery-tychy-vats-vat-silo-377019/ • http://en.wikipedia.org/wiki/Coral_reef • http://commons.wikimedia.org/wiki/ File:ShadowRidgeRoadFire.JPG • http://en.wikipedia.org/?title=User:Enricoslasheric/ pools_test • https://www.flickr.com/photos/leafbug/409950515/ • http://pixabay.com/en/photos/jigsaw%20puzzle/ • mossi889.deviantart.com