When dealing with Azure instances that are under-performing, how do you decide when to scale the instances? Do you scale horizontally by adding more instances or vertically by making the existing instances more powerful?
It depends on a lot of things (It'd be pretty hard to compare the two, but I'm sure someone who has enough time could find the real answer). However, all things being equal as far as total throughput of the two separate VS the combined, the extra instance option will give you some nice benefits:
- Theoretically, it gives you a higher chance that your application won't go down, since if you add resources to the same machine you have less total instances. The more instances, the higher the availability and less chance all of your instances will be down at once.
- Separate instances gives you the opportunity to distribute geographically, which will increase response time to requests that are close to it.