Last night Digital Ocean launched Managed Databases, a service I have been looking forward to. For now it’s only available for PostgreSQL (which I hardly ever use) but MySQL support is just around the corner. I’ve taken a look at what the service offers and here are some of my findings.
You choose the capacity like you choose a droplet size starting at $15/month. Each step increases the amount of RAM, Disk size and CPU capacity (except on the second plan where CPU stays the same) and doubles the price.
The size you choose can be increased at any time, and without downtime – but it’s a one way street. No way to reduce the size back without setting up a whole new Database – unlike droplets where you can scale up RAM and CPU temporarily.
Read-only nodes can however be a solution if you temporarily need more capacity. These can also have a higher capacity than your primary node, which gives you a reversible scalability.
Read-only nodes can also be added to other regions, which could be a great solution if your site is hosted in multiple regions.
With the exception of the cheapest plan, you can add 1 or 2 standby nodes. These will seamlessly take over in case the primary node goes down. If you don’t have a standby node, the backup will be used in case of a failure
but backups are only made once every 24 hours! That alone should be a reason to have a standby node with a write-ahead log. 2 standby nodes is what Digital Ocean recommends for best redundancy.
In their pricing overview Digital Ocean lists the price of primary node. Standby nodes will cost 2/3 of the price of the primary node – each. The same goes for read-only nodes, but these can be more powerful than the primary node which of course means a higher price. After 2019 there will also be a cost for bandwidth, and the service will be free for the rest until March 1st.
In the admin panel prices are displayed in a manner that is easy to understand.
Communication with the Database (cluster) is limited to the public network; The private network can not be used here (as of now). By default it will be open to all incoming connections, but can be limited by Droplet og specific IP.
You can specify a maintenance window. At that point in time, a new cluster will be provisioned with the updated db and OS and the data migrated. There is no downtime associated with these updates, but your database may experience latency or slowness for brief periods in the update window.
Usefulness for WordPress
This looks be a great service for anyone looking for improved scalability and redundancy without the hassle of maintaining the setup. Using a plugin such as HyperDB you could also really get the most of the read-only databases.
Combine that with the already availble services such as Spaces (for handling uploads) and a Load Balancer and you got the ingredients for a very powerfull setup that can handle tremendous amounts of traffic.
Looking forward to test this with MySQL, as Digital Ocean becomes more and more of a AWS competitor!
If you want to try out Digital Ocean, you can use my referral link to get a $100 credit towards your new account over 60 days. The database service will be free for the whole of February.