Showing posts with label microservice cost. Show all posts
Showing posts with label microservice cost. Show all posts

Wednesday, 10 December 2014

Microservices vs Mechanical Sympathy

At what point does it make sense to split some functionality out to run in a separate process to be called upon over HTTP?

When the only driver is the single responsibility principle, I'm looking for a term that means the opposite of premature optimisation - premature over complication has a nice ring to it.

Why don't I like this?  Let me enumerate the ways:
  • Additional network IO
  • Additional processes
    • requiring memory
    • occupying CPU cores
  • Placing additional load on networking infrastructure
  • A potential point of failure
In addition to those runtime overheads, we have some development and deployment considerations:
  • Another artefact to deploy
  • Another service to test
  • Another stream in the continuous delivery pipeline