2 small droplets vs. 1 big one.

Posted October 28, 2016 4.4k views
UbuntuServer OptimizationScalingLoad BalancingHigh Availability

In a situation where a $5 droplet is not enough: what are the benefits of having 2 $5 droplets and split the load vs. 1 $10 droplet?

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
2 answers

Well there are no “real answer”, no one can say this is better or no with sure.
In cases $10 Droplet vs. 2x $5 Droplet, I would go with $10 Droplet always.

Depending on your application needs 512 MB RAM could be small for production. It’s pretty OK for development but once you go in production, you will don’t know how much visitors you will have and your server could go down easy if you have RAM intensive app.
For example - if you use MySQL, recommended RAM as of MySQL 5.7 is 1 GB.

Beside RAM usage, you will have to take care that both servers have same configuration and are up-to-date.
This is not very hard, you can utilize Configuration Management. It’ll ensure you don’t have ‘snowflake’ servers and every is 'same’.
You can learn more about it in An Introduction to Configuration Management.
Content on both server should be same, app version also.

If you are using database this could be harder as you should doing some type of replication to ensure you have same content on both Droplets.

I really don’t see benefit of using 2x $5 or even 2x $10 Droplet. Where I see it is if you e.g. have 2x $20 or better. With small Droplets you will have more problems of having your app fails because of sufficient resources than anything else.

Benefit of making setup like that is that it’ll ensure if one Droplet goes down, second will able to serve requests. E.g. you are under DDoS attack, one goes down but your site is still up because second Droplet will serve it. There can still be problem in this case. If attacker is using domain name to attack, it will make first down than after some time second again. If they are DDoS-ing first via IP, second will work flawless until they don’t decide to attack it to.
Second example can be when you want to update Droplet and it requires reboot, your site will still be up if you update one by one Droplet.

This can be very powerful when done with big Droplets, but on small Droplets, I just see more pain than benefits. This is my personal opinion, maybe someone made this and it have great benefits and can share here. :)

You can learn more about High Availability in What is High Availability by Erika Heidi. It’s a very good read :)

by Erika Heidi
While handling increased system load is a common concern, decreasing downtime and eliminating single points of failure are just as important. High availability is a quality of infrastructure design at scale that addresses these latter considerations. In this guide, we will discuss what exactly high availability means and how it can improve your infrastructure’s reliability.

depends on your use case, having two will double your time to keep them up to date