Deploying Elixir - opinions on Heroku, Digitalocean, Bluemix etc

We are starting to wind down our local hosted cloud servers to go to something like heroic or similar.
So in order to decide I would like some input of the awesomeness that is this forum.

Does anyone have any experience of elixir deployment to some of the major names ?
Our applications range from trivial fire and forget apps , to heavy enterprise applications.
What would you chose and why ?

8 Likes

I’ve got some experience in deploying Elixir and Phoenix apps in Digital Ocean and Amazon Web Services. The use case of both is quite different:

  • DO: Very easy and friendly to deploy. Simple options. Cheaper in general than AWS. I’d recommend for small apps.

  • AWS: Has many more options and features. Learning AWS can take a lot of time if you want to use it to its potential but it’s the way to go for large enterprise apps.

8 Likes

What is your monthly spend?

Personally I would recommended dedicated servers.

2 Likes

My monthly spend would be around $14 for smaller apps
to up to $100- $250 for the larger ones. Monthly.
Database servers and backups are included.

These are Debian VM’s at the moment. but looking to find a more efficient home for the smaller applications that we hold for our customers.

If for the small apps you just needs VM’s then I recommend Digital Ocean. However, remember that the data’s location should always be a concern.

I would just get a dedicated server and run all your apps on it until you need another one. By the sound of it it could save you a lot of money.

In terms of vps we all may know the classical names. What do you recommend for a dedicated server? I’m curious.

2 Likes

Elixir runs pretty decently on your average Linux machine.

2 Likes

I’m based in the UK, so look at low-cost European companies such as Leaseweb, Redstation, Hetzner, Rapidswitch etc

If you are in the US there are loads of dedicated server hosts there - I would look at reviews on webhostingtalk.com as I haven’t used a US host myself for a while now, but I know there are lots of low-cost suppliers as bandwidth in the US is cheap.

It really depends on your budget when deciding on what to go for, more usually means better service not necessarily better/bigger server.

In terms of OS - I would use CentOS as it has been rock solid for me for the last 7 years. If hosting multiple sites/email etc, use a control panel such as Webmin - it will make your life much easier :slight_smile:

4 Likes

I’m also looking for advice here. Amazon’s RDS service is pretty expensive, but the ease of creating a database and a read replica is hard to beat. At the very least, I’d like a host that provides DB setup and backups.

Heroku has db backups according to the docs…but I haven’t used Heroku and actually needed it, so I’m curious how reliable that process is.

DigitalOcean has an auto installer for elixir; have folks found that it works fine?

Has anyone used Lets Encrypt successfully with any host? If so, with actual elixir based tooling, or just some more general solution?

2 Likes

What is your budget @ckhrysze?

I’ve heard bad things about the Elixir installer from Digital Ocean.

@AstonJ Ideally something under $50 a month while developing; full production would ideally be under $1000 a month. I have some rudimentary knowledge of the various skills typically labeled devops, but as the strongest on the team in that regard as well as being the lead developer, as little time spent with hosting is the larger concern for me.

1 Like

When I looked at the docs for it they were referencing a rather old version of Elixir. Not sure if that’s changed.

Same here. I’ve used http://datashack.net in the past. Can get some impressive hardware for cheap. My last box was a 12 core 24gig machine for $60 a month.

4 Likes

How busy are the production sites? If a dedicated server like the one @Mandemus linked to would handle them then your company could be saving thousands.

Granted dedicated servers are a little more involved but you could hire a consultant to set them up for you and show you how to make daily back-ups, restore, add new domains/apps, emails, etc

I use a single (64GB) server for all of my personal sites - and they are in various languages; PHP (Wordpress and some of my forums) Ruby/Rails, Static HTML/CSS and soon Elixir/Erlang.

Has anybody used https://www.scaleway.com/? They offer low-cost machines with SSD and ARM, I wonder how that plays with BEAM?

3 Likes

In theory, it shouldn’t matter if you have ARM or x86, take a look at the nerves-project which aims to run a fullstack elixir environment ontop of a minified linux kernel on one-board-computers. Also I already compiled erlang, elixir, node-js and phoenix from sourcce on my Raspberry Pi3 (driven by Raspbian), just to realize that node-js needs most time to compile among them. I can’t tell exact numbers, but erlang and elixir together took about 1.5h while I had to run node-js compilation overnight.

A first test of starting a fresh phoenix application was succesful, so that I want to do some further testing when I’m back home.

If you already have a domain or can buy one cheaply, the offers made by scaleaway could be used for first prototypes and then later on increasing the power of the platform and scaling horizontally as needed seems affordable.

I’d like to see some stresstesting as it was done with phoenix on that 40 core server in the 2 million connections test a couple of weeks ago…

2 Likes

Linnode is one alternative to scaleaway. I do remember scaleaway mentioning somewhere that you can use them as an S3 compatible service.

A tiny SSD VPS is good if you want to just toy around and learn, but then so is running a HyperV/VMware linux instance on your local machine.

http://serverbear.com/benchmarks/vps

That is a popular vps benchmark site. Still, nothing will really beat a dedicated server if you’re serious about your app.

1 Like

Did get a propper server ar a “local” to norway datacenter that has some certifications I need. (and are not too keen on maintaining myself)

Works like a charm 12 core 64 gb ram. centos(I thought I was using debian but was in fact centos)
Using another one for the smaller apps and a small vm as a test server. Halved my costs. :slight_smile:

1 Like

Nice :023:

Which host/datacentre did you end up with? How much are you paying for that server?