(Please note my Articles are not reproduceable under any licence(s) and without permission. This is what I learnt from dev.to)
So you want to host your app in cloud.... Hmmm you may choose AWS, Google, azure, digital ocean, vultr, linode etc...
But my question is simple , why you need Cloud?
Any calculation that makes you feel like clouds are better than normal hosting companies? OR you love to spend time in understanding their complex pricing structures.
Believe me there are people who are earning by helping you to calculate cloud pricing.
Let me answer why you don't need cloud if:
1) your app has very less concurrent users under 200.
2) Your app has nothing to do with different geo located people.
3) your single server can act for load balancer.
4) latency doesn't matter.
5) You are not worried about SLA.
THIS Means if your app is simple and not resource hungry host it on any non cloud hosting like WordPress sites.
Let me burst more myths about cloud computing:
1) cloud is nothing but virtualisation minus manual intervention.
2) you can create your own cloud by use of APIs or at least you can make your vps as cloud by using opennebula.
3) There is difference between scalability and elasticity. If you are using containers like Dockers/LXC/Podman they are inherently elastic by nature. This means they use resources as when required or free them . Think like these containers as app
4) If your cloud provider is not providing CPU Virtualisation then ..... they are low in hardware stability. This point is very strong. Experience people will understand.
5) Before going for cloud read their SLA.If you don't care about SLA then you should not care about cloud hosting.
Why your apps performance is poor despite of good ram and storage capacity?
This answer implies to both cloud and vps hosting.
Total Cores and port Mbps bandwidth matters.
For an example:
You want to host a video conferencing app in your cloud / vps . 3-4 Mbps is port speed required for 1 person. And if you have 200 Mbps port then max people you can accommodate is 60 as 20 Mbps will required by host. But you won't be able to get max 10-12 people in vc !!! This is because your upload and download speed may be lower than promised 200 Mbps and you are not careful about service level agreements. This is also why concurrency of users is bottlenecked by your port speed despite you having good ram, cores , storage, load balancers etc.
So what you need when not using cloud or Cloud instances below 64 GB RAM (4 cores)
1) port speed.
2) try to use containers they are naturally elastic like cloud
3) load balancers
4) reverse proxy