3 ms·
Which replacement for Heroku in east coast US?
Hi everyone,
we're using Heroku and honestly, it's a constant mess. We're bumping into Heroku's 1 GB RAM per dyno limit many times per day and when we had serious database performance issues, the Heroku support just denied the problem for a few days before moving us to a new instance, which magically fixed all the issues.
I know that Heroku offers instances with more RAM, but 14 GB at $500 just seems ridiculous to me.
In Germany, I'd just use two managed hetzner.de servers, but I need something with low latency to the area around Boston, US.
In detail, I need:
1 PostgreSQL DB with ~16 GB storage and 4 GB RAM cache
1-2 Core i7 Quad-Cores with 32 GB RAM for Ruby on Rails hosting with Nginx proxy
I'm only interested in managed services, where they'll do the OS updates and reboots on their own, without me having to get up at night. And it should be less than $700 per month for the DB and the RoR hosting.
Can you suggest any provider?
- gt565k 11y agoHmm, I'm curious to see how you're reaching the 1GB limit per dyno. How many web workers do you have per dyno? I worked on a pretty heavy monolithic rails app that was able to run 3-4 unicorn workers per heroku 512mb dyno. I'd highly suggest you use newrelic and try to analyze how much memory each worker is consuming and how that exceeds the total dyno 1GB limit. Make sure you look at the peak consumption per worker in new relic. Otherwise you might run into a problem where workers are killed after exceeding the total dyno memory limit. You want to tweak the number of unicorn workers based on their total memory consumption at peak times, and find the optimal number of workers that can fit in a 1GB heroku dyno. Having said that, heroku does get expensive as you scale up. You'd be better off managing your own servers, but that requires a good chunk of time to setup properly. A few things I did in order to bring the slug size down for heroku dynos was to move all assets to AWS s3/cloudfront. Minify all CSS and JS, use carrierwave gem to upload to s3 bucket, and serve with cloudfront. Getting all of your static assets out of your slug will greatly reduce memory usage. Also, I want to point out that you can setup your own database with AWS, and just point it in your env vars for heroku. You don't have to buy all the services from heroku and get charged extra $$.