I've been very interested in Service Oriented Architecture, and Microservices. Many resources talk about having services in containers.
To me, one of the big benefits of seperating an application into services is performance. I can have each service live on a seperate server and if some services are using more resources I can scale, and load balance, when required. As opposed to a monolithic approach where you would have to load balance the entire application.
I keep reading that services should be in containers. What is the benefit of this? If I have multiple services on 1 server using containers then how is that different to a service in a monolithic application? Isn't this going to cause potential problems when the time comes to move those services onto seperate servers? And would it not be more ideal to have them on different servers?
This book (page 6) https://www.nginx.com/wp-content/uploads/2015/01/Building_Microservices_Nginx.pdf talks of instances. I assume these are Amazon instances.
Personally, it feels wrong to be having multiple services on a single server. Or am I missing something?