Loading...
Answers
MenuHow and where to host a mobile app developed in PHP?
I need something that is scalable and reliable. I'm lost and close to being scammed by an outsourcing team not wanting to consult.
I'm unfortunately not an expert and only meeting people trying to get me on a long term contract but I just need my MVP to be on the stores.
Answers
I've built a load of apps over the years and tried out many of the major providers. Currently I'm the CEO of a startup making advanced email technology, which is incredibly server intensive, so I feel I'm in a good position to advise!
I'm not sure from your question if you're looking to host the backend or frontend of your mobile app, but what I have to say applies to both really.
I'm going to assume that you're not a systems administrator, and have no desire to be, so I think that rules out self-hosting and colocation. That's when you buy servers to run yourself or rent server space in a shared facility. You'd need to spend a lot of time maintaining these servers, fixing bugs, etc. and it's basically a full time job.
Next up we have the option of renting space on shared servers. You can get instances on Amazon EC2 or Rackspace fairly cheaply, and you'll be able to start out with a default configuration that has an operating system loaded for you already. You'll still have to maintain these though, and the way I look at it, do you really want to be responsible for installing updates and 0-days on a server if you're at an important event, or in the middle of something? I sure don't.
Then we get down to PaaS (Platform as a Service) offerings like Amazon Elastic Beanstalk and Heroku. You'll rent small amounts of scalable space from them which you can increase or decrease at any time. So if you get a spike in traffic, you're covered. You'll get more transparent pricing, more support, and you're not responsible for updates and server maintenance. You get less control of the stack this way (for instance, it's more difficult to install custom packages) but it's far less admin than any of the previous options.
This is where I think you're at, and having used the two I think you'd be best off with Heroku. They have good and bad points (doesn't everyone) but I've been using them for some time now and haven't had any major problems. Deploying code is a couple of lines in a terminal - it's super easy. And maintenance is all taken care of for you.
Some companies have taken PaaS to the next level and just provide you with an API and a nice web interface to interact with them, like Parse. You can host Javascript on Parse, but not PHP, so it's not a good fit for you.
There's other cheaper options too, like shared hosting. As you're using PHP you could host on the majority of web hosts (1and1, Hostgator, etc.). This is a terrible idea, and you shouldn't do it. You'll hit memory limits and other nasties really quickly, and you'll not get the developer support you need.
There's a ton of other hosting companies out there that I didn't mention, and it's a massive topic. You'll also need to think about databases and storage, and who's going to manage the deployment of code.
I'd love to talk to you more about this. Schedule a call if you have any other questions, or if I can explain anything more thoroughly for you.
I have to agree with Jake Peters. The best answer is AWS if you're comfortable with running LAMP stack servers, relational database servers, elastic load balancers, auto-scaling, etc., which requires a ton of knowledge, especially the way AWS is setup.
For simplicity, Heroku is unquestionably the best option if you'd prefer to spend your time working on marketing your app than learning the ins and outs of how AWS is setup because you'll be forced to learn things like:
What's an EC2 Instance?
What's an RDS Instance?
What are Elastic IPs?
What's IAM?
What's an ELB?
What's an AMI?
What's a bucket and more importantly, a bucket policy?
Am I using the right kernel?
I can go on and on. AWS provides the most flexible, scalable and robust portfolio of services and options, all at your control, but there's a learning curve, for sure.
Once you get comfortable with AWS, you will never want anything else. This is why Netflix, Pinterest, Instagram and a host of others use AWS.
Heroku will help you cut the learning curve and get your app up and running so you can spend time on the most important part of app development: marketing.
I assume you really mean a back-end code serving mobile app client. If that is the case, you can go with major cloud providers - AWS, Google and Azure.
You may also want to explore a list of cloud PaaS at https://docs.google.com/spreadsheets/d/1tGm1gr6udLvrknhMzw7mRSouWSvMMfyjs8_csSdto64/edit#gid=0
It's a bit outdated, but still good in terms of evaluating a required feature set.
If you're going the outsourcing route there are a couple of things to know depending on the country you are in. Most "Sr. Level Developers" are people who have only 2 to 4 years developing. What's worked for me in the past is assembling my own team or finding a real Sr. Developer who's been doing it for 10+ years. This will greatly reduce your cost and your head ache. I lost $10K on a project learning this lesson.
In regards to the hosting of the app, Amazon AWS or Rackspace or even Digital Ocean are all great places to start as has been mentioned above.
One last thing, since you're in it deep, avoid making the mistake of pushing things out the door without testing. Get a test dev who's onshore to test your app before you push it out the door. It will greatly save you on the cost of support tickets.
Related Questions
-
I've been working on an app concept for 6 months and built an MVP. Is it better to pay a development firm to build or hire a developer as a cofounder?
I have built two software companies by hiring out the development work. I sold one for a decent sum during the dot com era (circa 1999). I remain a shareholder in the other one. I currently work with amazing development company on behalf of one of my clients. Here are some things to consider. 1. Do you really want to give up equity? If not outsource. 2. How fast do you want to get to market? If sooner than later, outsource. 3. How capitalized are you? If undercapitalized, either outsource offshore (which runs about 20% of US rates), or bring on an equity development partner. I offer a free call to first time clients. Let's chat and I'll give you some great advice from three decades of experience. Just use this link to schedule the free call: https://clarity.fm/kevinmccarthy/FreeConsult Best regards, Kevin McCarthy Www.kevinmccarthy.comKM
-
What is the best technology for developing a new mobile app from scratch?
There are two sides to that question. One is the mobile app itself and the other is the backend. If I misunderstood in any way and you didn't mean "native" app I apologize in advance. On the backend, there is no clear cut answer to which is the "best". It depends solely on the developers you are able to get. We for example use Node.js , mongoDB, redis, elasticsearch and a couple of proprietary tools in the backend. But you have your pick of the litter now both on the backend api and the datastore with the myriad of options available and touted as the "best" currently on the market. Now on the app side again it solely depends on what you need your mobile app to do. Experiencing first-hand "develop once, run anywhere" I can say it's more like "develop once, debug everywhere" to quote a Java saying. We have tried Phonegap and Titanium Appcelerator and we have switched to native (ObjC and Java) after a couple of months of trying to go the hybrid route. The reasons behind the choice are as follows: - anything that breaks the pattern of how those frameworks NEED to operate is just a huge technical debt that keeps accruing a huge interest. - anything that uses css3 accelerated animations on Android is buggy at best and slow as hell at worst on any lower (< 4.1 I think) versions of Android I hope this gives you some insight. If you need/want to ask me anything feel free to contact me. MihaiMP
-
What is the generally agreed upon "good" DAU/MAU for mobile apps?
You are right that the range is wide. You need to figure what are good values to have for your category. Also, you can focus on the trend (is your DAU/MAU increasing vs decreasing after you make changes) even if benchmarking is tough. Unless your app is adding a huge number of users every day (which can skew DAU/MAU), you can trust the ratio as a good indication of how engaged your users are. For games, DAU/MAU of ~20-30% is considered to be pretty good. For social apps, like a messenger app, a successful one would have a DAU/MAU closer to 50%. In general most apps struggle to get to DAU/MAU of 20% or more. Make sure you have the right definition of who is an active user for your app, and get a good sense of what % of users are actually using your app every day. Happy to discuss what is a good benchmark for your specific app depending on what it does.SG
-
If I am planning to launch a mobile app, do I need to register as a company before the launch?
I developed and published mobile apps as an individual for several years, and only formed a corporation later as things grew and it made sense. As far as Apple's App Store and Google Play are concerned, you can register as an individual developer without having a corporation. I'd be happy to help further over a call if you have any additional questions. Best of luck with your mobile app!AM
-
Whats are some ways to beta test an iOS app?
Apple will allow a developer to register 100 UDID devices per 12 month cycle to test via TestFlight or HockeyApp. Having started with TestFlight, I would really encourage you NOT to use it, and go directly to HockeyApp. HockeyApp is a much better product. There is also enterprise distribution which allows you far more UDID's but whether you qualify for enterprise distribution is difficult to say. As part of your testing, I'd encourage to explicitly ask your testers to only register one device. One of the things we experienced was some testers registering 3 devices but only used one, essentially wasting those UDID's where we could have given to other testers. Who you invite to be a tester should be selective as well. I think you should have no more than 10 non-user users. These people should be people who have either built successful mobile apps or who are just such huge consumers of similar mobile apps to what you're building, that they can give you great product feedback even though they aren't your user. Specifically, they can help point out non obvious UI problems and better ways to implement particular features. The rest of your users should be highly qualified as actually wanting what you're building. If they can't articulate why they should be the first to use what you're building, they are likely the wrong tester. The more you can do to make them "beg" to be a tester, the higher the sign that the feedback you're getting from them can be considered "high-signal." In a limited beta test, you're really looking to understand the biggest UX pain-points. For example, are people not registering and providing you the additional permissions you are requiring? Are they not completing an action that could trigger virality? How far are they getting in their first user session? How much time are they spending per user session? Obviously, you'll be doing your fair share of bug squashing, but the core of it is around improving the core flows to minimize friction as much as possible. Lastly, keep in mind that even with highly motivated users, their attention spans and patience for early builds is limited, so make sure that each of your builds really make significant improvements. Happy to talk through any of this and more about mobile app testing.TW
the startups.com platform
Copyright © 2025 Startups.com. All rights reserved.