How to choose the best option to host the database and files (on the web) of an app / webapp?

prbmjr

Active Member
Licensed User
I`d like to know your opinions on the following question: How to choose the best option to host the database and files (on the web) of an app / webapp?

Right now I have a simple shared server (low budget) with a mysql database (using php scripts on the server), but I see that I will fall short if the users of my app / webapp increases too much ... I have 3 apps already on the same server, with access in the same database...

The question is whether I should upgrade my database and files server to a VPS with configurable resources but from a local company or use a global services such as AWS or AZURE? (I have no experience with these cloud services yet), Taking into account the prices and possibility of expansion, also considering the processing of the app as a login, information from the database (non-mass reading and writing, ) reports and upload / download of files through the app and webapp) with the possibility of more than 300 simultaneous users.
 

EnriqueGonzalez

Well-Known Member
Licensed User
Longtime User
Hi!
Try upgrading your vps first. 300 users simultaneously don't need the power of the cloud. The cloud is expensive if you don't have experience.

I have come to love an extra level of abstraction regarding how you handle the runtime environment and i fully recommend to learn docker.

Docker is an intermediary between your app and the OS. if you later require scaling you only need to copy the image to a new server, run 2 commands and you will be up again. it requieres knowledge and effort but it is very rewarding.
 

prbmjr

Active Member
Licensed User
Hi!
Try upgrading your vps first. 300 users simultaneously don't need the power of the cloud. The cloud is expensive if you don't have experience.

I have come to love an extra level of abstraction regarding how you handle the runtime environment and i fully recommend to learn docker.

Docker is an intermediary between your app and the OS. if you later require scaling you only need to copy the image to a new server, run 2 commands and you will be up again. it requieres knowledge and effort but it is very rewarding.

Hi Enrique,

Thank you for your advices and opinions, I've the same opinion, but i'm wondering, How to identify the moment and the real needs to be profitable and technically necessary to move to the cloud?
 

sfsameer

Well-Known Member
Licensed User
Longtime User
I`d like to know your opinions on the following question: How to choose the best option to host the database and files (on the web) of an app / webapp?

Right now I have a simple shared server (low budget) with a mysql database (using php scripts on the server), but I see that I will fall short if the users of my app / webapp increases too much ... I have 3 apps already on the same server, with access in the same database...

The question is whether I should upgrade my database and files server to a VPS with configurable resources but from a local company or use a global services such as AWS or AZURE? (I have no experience with these cloud services yet), Taking into account the prices and possibility of expansion, also considering the processing of the app as a login, information from the database (non-mass reading and writing, ) reports and upload / download of files through the app and webapp) with the possibility of more than 300 simultaneous users.
I would recommend Microsoft Azure but the cost is very high because they charge upon CPU usage.
If you are a startup or you have a very low budget then i would recommend google free-tier

google free-tier is the same as Microsoft Azure but they give you free credit for 1 year, meaning your server will be free for whole year.
so use google free-tier for a whole year, get to know VPS better then if you find your self ready to upgrade then move to Microsoft Azure.

Upon experience with azure, below are the pros and cons :

Azure Pros :
1- Very fast internet connection (1 GB/s) *Important
2- Firewall and VPN built in services *They charge extra if you use them
3- Server location, it's pretty good because that means lower ping
4- Very very secured, they provide a free option to install a firewall to prevent unwanted connections
5- Very fast VPS, even if you select the minimum CPU cores and RAM it would still be fast because they use a very light windows version + they use CPU Xeon R which is pretty fast.

Azure Cons :
1- Too Expensive, We pay around 3000-5000$ a month for 3 servers
2- Charging upon CPU usage is very bad because if you use asp.net the users will connect to your website and the IIS will start opening services called IIS-Workers and they will eat the CPU, and that means extra cost
3- Pay on the go, this is by far the worst feature, it means upon usage you will pay.
Azure doesn't have a fixed price, so you will never be able to know your monthly expenses until they send you the email that you have to pay this amount
4- Customer support will take between 5-7 business days, so if you have a problem or a question then you will have to wait and wait and wait.
 

Cableguy

Expert
Licensed User
Longtime User
I am using the very lowest VPS plan from 1&1 ( now called Ionos), about 5$/month...
Just for trying things out and concept proofing. Then if I need to, just upgrade my plan... almost 0 downtime
 

sfsameer

Well-Known Member
Licensed User
Longtime User
That sounds extreme, what are you using the servers for?
1 of the servers is manly used for an online payment services called (efawateercom) which it currently has over 2000 clients.
The system is for the markets (supermarkets, gas stations, etc...), it enables the client to pay the invoices for the users and gets a commission on each transaction the client makes, the system provides 650+ services (electric bills, water bills, government bills, etc...)

1-each client performs about 9-20 actions per invoice payment (post and get) to the server's web service
2-each client pays about 100-200 invoices per day

So the total transactions per day is HUGE that's why before even considering using Azure you need to calculate how much is your income and how much it would cost if certain transactions would be performed.
 
Top