Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

tptompkins's avatar

Where should I deploy my new app?

Hey Guys -

Let me start by giving you some of my background so you can get an idea of where I'm coming from. For the last 10 years or so I've deployed and managed a php / mysql application (not Laravel) on thousands of sites across many servers that are primarily running WHM / cPanel. Over the years, I've grown attached to the guys at Wired Tree - www.wiredtree.com since they offer fully managed dedicated servers and VPS servers. I currently have five VPS servers and a dedicated server with them. Their customer support is absolutely fantastic. They typically email back within minutes after submitting a new support ticket and their staff is very knowledgeable with all things server related. In a nutshell, they let me focus on my app while giving me a shoulder to lean on in case I run into any issues from a server perspective.

Now that I'm getting ready to deploy my first Laravel app, I'm trying to decide if I should go with what I know over at Wired Tree, or if I should jump on the "cloud" bandwagon with AWS, Digital Ocean, Linode, Heroku...etc. I have absolutely no reason to use WHM / cPanel with this new app, but I have zero experience with any of these other services.

I don't have any experience with load balancers, separate database or application servers. My experience is limited to running PHP / MySQL through Apache on single servers. In the past, to scale my application would mean adding more hard drive space, memory, processor and eventually migrating from a VPS to a dedicated server. I have no idea what scaling up looks like on Digital Ocean or these other services.

What I would ultimately like to have is a server that I can scale up or down based on traffic load without having to take the server down and migrate everything to a bigger server like I've been doing in the past. Maybe I'm dreaming...does that even exist?

Given my experience level and desire for easy scalability, where would you suggest I go to deploy my new app?

PS - I recently purchased the Servers for Hackers e-book at https://serversforhackers.com and plan on diving into that in the coming days :)

Tommy

0 likes
18 replies
ohffs's avatar

If I were you I'd stick with what you know for now - sounds like you have trust with then and a good service relationship. No harm in trying out amazon/digital ocean too though for $5/10 a month. Scaling is often application specific in a lot of ways - sometimes you need to scale your DB back-end, sometimes caching, sometimes ... etc so you'd probably need to see what provider suited your wallet for what you needed to do :-)

Somewhat of an aside, but on the scaling front, I remember reading an article many years ago by the techies who ran the website for the 'Big Brother' reality show. Eventually due to the massive load they gave up on it being 'actually' dynamic and would just continuously (re)render static html then rsync it to a load of servers :-) Sometimes low-tech hacks wins out :-)

2 likes
nate.a.johnson's avatar

AWS will give you the most flexibility and almost instantaneous scaling but it's complex. I tend to go with linode. You can resize your server, etc but it usually takes 20 minutes or so.

jekinney's avatar

Go with what you know. Just be sure you can deploy properly. Specifically permission and proper set up with your public folder.

I use DO but because I use forge and envoyer. At work we use aws. Aws is definitely amazing but isn't cost effective unless you need the options and power it provides. (Meaning traffic and amazing performance along with features it provides).

tptompkins's avatar

Any thoughts on Heroku? It looks really intriguing and easy.

tptompkins's avatar

Not sure if this helps, but I should probably mention that my new app is very disk I/O heavy with saving new high res images and deleting old images. It's also very memory hungry as image resizing and image manipulation are among it's core feature set. A typical image resize process can easily use 20 MB of memory.

bonzo's avatar

If you fairly good at linux administration stay with a vps, any configuration is possible, much cheaper. FOr 12 € I have 2 cores, 8gb RAM. You can decide if you want 60GB SSD (for I/O heavy tasks) or 320GB SAS. If you want a basic server you get one for 6€ and combine a couple of them for security or performance. If you're not so good at linux administration go to a cloud. At the end it will be cheaper

tptompkins's avatar

Wow that looks like a great option that I never knew existed! Unfortunately, for me that won't work since what we're doing is very specialized image manipulation and the security requirements are very high. I'll definitely keep that site in mind for future projects though.

1 like
jimmck's avatar

@tptompkins Interesting. Still mystified over your 'Hashing Routes' solution and you have moved on to architecture. Since you have not specified what your application requirements are how could one possibly size anything. Just eyeballing the difference between Digital Ocean and Wired Tree leads to many questions. And your security requirements are very high. Hmm perhaps the NSA has free space on retired server farms somewhere?

tptompkins's avatar

@jimmck lol! Where are the NSA cloud services when you need them?!

Not to detract from the current thread, but in the "route hashing" post you're referring to, I was basically just trying to generate a random token and for some reason I thought it'd be a good idea to use bcrypt for that. Totally unnecessary in that specific case. The str_random() function does exactly what I was looking for.

In regards to my app, it's basically a steganography as a service app called Undercover Pics. The app basically allows you to choose a secret photo and a cover photo, then securely encrypts and embeds the secret image into the cover image so that you can store the resulting "undercover pic" on any device. Later, you or your friends can come back to decode through the app with the password when you want to view the secret.

1 like
tptompkins's avatar

@jimmck Ahhh...I get it - "Steganography" like "Stegosaurus" lol! Sorry for the delayed laugh. That one took me a while.

melkhior's avatar

It's not the most secure way to set that kind of stuff up. You'd still have to adjust some stuff yourself if you want it to be as secure as possible. But it's fine for 99% of cases.

Recently started using Forge with a VPS from Linode, and it's really smooth, but if you want more customization you can setup Plesk on a VPS/dedicated server, it has built in Composer support and it will have automatic deployments from Git in Plesk Onyx.

1 like
melkhior's avatar

@tptompkins They recently upgraded the amount of RAM in their VPSes, it's $10 for 2GB of RAM which is pretty nice.

Also, I don't like DigitalOcean's very strict DDoS policy, one script kiddie and your VPS gets null-routed for 2 hours.

jlrdw's avatar

As long as you can upload an image in .00001 sec @jimmck will like it very much. But seriously as long as you have a good company I would stick with it and just simply implement the proper security.

Please or to participate in this conversation.