Systems are expected to grow at any time, and you know "Any time" even at middle of night. Also you won't know when a new pandemic is going to be propagated in the world and people need to make almost everything using the computer and your system will increase traffic even 500% of the expected.
It sounds good, but be careful scalability isn't something you have to do just when the system fails or maybe when a big deal is near. You have to think is scalability from the beginning. Because is so difficult to scale in/out a monolith, here is a list that i think you should have in mind from the beginning:
- Don't create logs in the server, it's difficult to maintain when you have to duplicate your server.
- Avoid a LAMP, MEAN servers, please move your database to another connection.
- Integrate a monitoring tool, will be easy if you can see what is happening before sign in into the server.
- Create Microservices, and avoid to use always the same programming languages, there is a language according the task.
- Use external service for assets (img, pdf, csv, txt ...), I usually use S3 it's cool.
After follow those tips, will be easier to move your system to a high scalable site, and some other benefit come in the package like easy to maintain, availability, cost effective site. Yes if you are able to reduce the server size when there are no users using it your wallet will be happy.
And at the end, obviously you will be able to sleep better.