title: How to build scalable multi-application with ability to scale up certain app components?
body: <p>I'm building app (Java, Spring) which reads list of "services" from single db and then listen on single REST endpoint and runs specified service (depending on request param) in single worker thread. I may also want to run certain "services" on more instances, and some only on several, because some services may be heavily used and some not. My goal is to make this application scalable through docker replication.</p>
  
  <p>Typical use case - Services:</p>
  
  <ul>
  <li>1x Service A</li>
  <li>1x Service B</li>
  <li>2x Service C</li>
  <li>2x Service D</li>
  <li>5x Service E</li>
  </ul>
  
  <p>How to build systems like this, with ability to balance services between nodes?</p>