Small test on top 3 meteor hosting services
Later edit (2018): I ended up using http://meteor-up.com/ with a custom VM in AWS/Google cloud. The costs were too high with a managed service (like the ones from this article).
I will compare MY EXPERIENCE with their services. Each provider has more or less features, I will NOT compare or take into consideration all of them, only the ones I need for this project.
I built a MVP: small, simple Meteor app without a database and just one server call. I tested only 3 (I couldn’t found more) hosting providers looking for:
- a cheap dedicated cloud hosting (that knows about node JS or meteor directly)
- NO devops/server, cloud only
- best performance for US clients, DDNS is a plus for EU/ASIA
- CI compatible deploy procedure
- scalable, admin interface to add more containers on the fly
- text support in max 24h
The stress tests
I measured the time spent to develop and integrate the CI deploy method and how long it took to successfully deploy (project changes,builds).
I selected the cheapest package with 1 container.
I made some stress tests to reach their CCU limit. I used 2 sources of 30–300 clients (using docker and meteor-down) with a server call every 3s.
I checked the technical KPI’s with their own tools and Kadira (free plan), as in CPU/RAM/Connections etc.
I sent at least one support ticket.
- fast, very fast
- trial/limited free test
- cheapest/smallest plan
- scalable to their own MongoDB/Redis/Cloudsearch services
- Statics access directly from the node balancer (requests don’t reach nodeJS)
- node balancer IP not CNAME (compatible with more DNS services)
- their own CLI (made in Java), no way to bypass it
- Archaic payment method (pay per month at container activation). Cannot scale properly for peaks without losing money.
- lack of deploy tokens (need to keep email/password in bash files)
- missing function to stop the containers (but you can redirect)
- you pay for the MongoDB even if you don’t use it ($5 for 100mb)
Relatively fast to build the deploy scripts, few hours give or take, mostly because of their CLI. Relatively fast support response time.
It went up to 300+ CCU on 1 128MB container at $9 per month(from which $5 is the mongoDB).
- official hosting (meteor deploy commands, first hand support)
- pay only what you use (at a second timescale)
- nice admin UI (compared with the others) and responsive
- no free/demo/trial period
- they ask the payment details upfront
- VERY limited CPU, the worst results at CCU tests
- missing the ability (the others 2 have this feature) to edit meteor settings from the admin panel (I use them as on/off flags for 3rd party services or features)
- most expensive smallest package
Fastest deploy time (because is built in meteor), 1 day competent support answers.
It barely reached 100 CCU on 1 512MB RAM container at $0.04/hour (the CPU is very weak).
Xervo (old Modulus) will shut down
- scalable and DDNS (you can host on 2+ continents and 3 hosting providers, and each of them have different scaling rules)
- pay only what you use (at 1 hour timescale)
- fast support response time
- lowest best package (192MB RAMwith $0.01/hour)
- missing and outdated documentation, don’t specify how they exactly build meteor projects
- The CPU always stays at 80%+ but I think is just my problem, I am still waiting for a reply/fix from them
- their software couldn’t be installed at start (but they fixed the bug in like 10 minutes)
- not so professional website, looks like a 2000 dark web forum, and I had a big latency from EU
I spent a huge amount of time on making the project start, they build the Meteor projects on their servers, in a strange way and took me more then 6 hours trying to fix the errors. I quit, I made the builds locally and upload them as NodeJS projects directly and had fewer problems (it took only 2h to find out that their node-install do weird things and I had to upload the node_modules with the build, skipping their entire build process). I had the most problems with their systems but they have the biggest potential (with the scaling feature and low pricing points).
At 150+ CCU (started to loose connections and act strange, I think is a result of the CPU problem) with a 1 192MB RAM $7 per month ($0.01/hour).
All 3 hosting providers have:
- small, obvious and annoying bugs, no software is perfect
- custom domain SSL free certificates and https redirect
- at least 2 data-center locations to choose from
- limited technical documentation (few things missing or outdated)
- under 24h response time on support tickets
- node balancers and the ability to add/remove containers on the fly
Results after 1 month
Xervo (modulus) shut down on April 28th, 2017.
NodeChef works ok with 2x256 containers and a small website. Is better for services and tools, as in you can install ubuntu extra packages, and is fast.
I’m using Galaxy only for temporary tests and fallback.
Results after 1 year
I ended up using http://meteor-up.com/ with a custom VM in AWS/Google cloud. The costs were too high with a managed service (like the ones from this article).