I got lucky - I made an application and it turns out there are some people who actually want to use it. I never thought I would get this far.
My application is based around retrieving information from a database with about 80 million rows. The database is heavily indexed, and the information in it is static - it isn't written to, except with user account data. The people using my application are performing search queries on this database essentially once every couple of seconds.
Currently I am running the website through Forge on a Digital Ocean droplet with 3GB of RAM, 1vCPU and a 60GB disk. The point of this post is: I want to learn how to monitor the performance metrics on the server and know if/when I will need to upgrade things like RAM and CPU.
I've been watching the graphs on Digital Ocean and so far everything seems fine to my ignorant eyes, but then again I really know nothing about this area. CPU usage is rarely over 5% and memory usage is a steady 16%. Disk usage is sitting at 37% and the disk I/O has spikes of up to 350kb/s pretty frequently (no idea what this means). The bandwidth public gets spikes of .05mbps frequently, and occasionally a large spike to .36mbps. Those are all the graphs at my disposal.
Is monitoring those graphs all I need to do to ensure I always have enough "juice" to power my application as my number of users increases? What is a good resource to learn how to monitor my server's load and how/when I need to upgrade different components of it? Appreciate the help in advance guys.