How much load Elixir (Phoenix) will take on the following dedicated server?

8 Dedicated x86 64bit Cores

32GB Memory

50GB SSD Disk

250GB Direct SSD Disk

1 Flexible public IPv4

800Mbit/s Unmetered bandwidth

5Gbit/s Internal bandwidth

1 Like

Well… it all depends on what your app does, so it’s difficult to say.

An “hello world” would be pretty performant on such a server.

1 Like

What if a OKCupid clone instead of a “hello world” is run on it?

1 Like

Depends once again what you mean, I don’t think the application server would have to do most of the job. Get yourself big hunky servers for the databases. And if you expect a huge number of regular users throughout ten timezones, buy yourself one or two datacenters per continents.

2 Likes

Thank You!
What if the app will have only 2000 to 3000 users online at a time at its peak load, not as many as the real OKCupid have?
Will it hold all of the load on (the said) single dedicated server?

1 Like

no. never rely on a sole server.

3 Likes

I can’t see what the OKCupid site offers so don’t know what its needs might be, however I would say if designed and coded well, a Phoenix app on a dedicated server will take quite a lot load - and in some cases, significantly more in comparison to many other languages or frameworks.

The great thing is that dedicated servers are far cheaper than ‘hosting in the cloud’, so if you outgrow one, it should not be prohibitive to add another.

I would say if budget is an issue, just go for it! If you outgrow a server you can always add more later - and you’ll be surprised by how well a single (relatively beefy) server performs.

I would however stress the importance of making sure you do off-server back ups, and to have two HDs set up in a raid array (so if one fails your app won’t go down).

3 Likes

Elixir is a top performer probably beaten only by C / C++, you have to put it on the test and see how it does, add hardware if needed. Even on a limited resource shared VPS it very fast.

2 Likes

That seems unreasonably optimistic.

Edit: Elixir is fast, but there are plenty of things that are faster.

3 Likes

I think maybe @Neurofunk was urging for more than one server for the same reason as you urged for RAID arrays & backups: Redundancy and potential for zero-downtime.

3 Likes

It’s not usually a super productive discussion, but I think it depends on what you mean by “faster”. Average latency is one metric I expect to see good things in from anything running on the BEAM. It’s made for handling thousands of things “fast enough for each”, so I don’t think it’s unreasonable to say that it might beat most in that category.

2 Likes

The great thing is that dedicated servers are far cheaper than ‘hosting in
the cloud’,

I would say that’s exactly backwards until you hit significant scale.

… so if you outgrow one, it should not be prohibitive to add another.

And if you over-bought? In my experience most people wildly
overestimate their requirements, and if you own it you can’t
easily downgrade to a more appropriate config as you can with
cloud-based servers.

OTOH, if you start with the smallest system that will run your app
you can build up a performance profile and upgrade when and if
it makes sense.

Neurofunk:

no. never rely on a sole server.

  • 1 – having multiple (even 2) servers offers both redundancy and
    flexibility.

YMMV,

2 Likes

Yep - I guess it depends on how quickly you can commission a new server / how much down-time you can afford. However I would still say the same - if budget does not allow it, just do it. In many non-critical applications, being down for a few hours or a day shouldn’t be too much of an issue. It’s like @hassan says below - I think it’s better than overspending.

I was going by the OP’s 2,000 to 3,000 online users, where I think a dedicated box would be cheaper. Having said that, dedicated servers have come down quite a bit in recent years so I don’t imagine the difference to be as significant as some might think (unless your app is pretty small).

It would simply mean switching to a different (cheaper server). Most rental contracts are month by month. I wouldn’t buy a server (i.e. co-locate) unless I needed more than 10 servers.

For anyone interested, there are some good recommendations (and further discussion) on dedicated servers in this thread: Deploying Elixir - opinions on Heroku, Digitalocean, Bluemix etc

1 Like

The said server costs only $29 at scaleway.

1 Like

I don’t think I’ve heard of them - but I’d definitely recommend looking at the thread I posted as I believe quite a few recommendations are in there (and a few other threads we’ve had on the topic) :023:

2 Likes

I think Phoenix should easily handle that much load on the said server.

3 Likes

Scaleway is quite cheaper than the options you said in that post. https://www.scaleway.com/baremetal-cloud-servers/

1 Like

If You plan to have a huge application, then it would be a good idea to think distribution from the start. That way, You will benefit from one of Erlang/Elixir main functionality.

You won’t need to think if your server is big enough, because You could just add one if needed.

Distribution is hard, but mastering it solve scaling problem.

2 Likes

I’ve not heard of them before and tbh, their configuration seems a bit odd - 50GB SSD and a “250GB Direct SSD Disk” - what’s a ‘direct’ SSD? It just seems a bit odd. I’d read some reviews and post on webhostingtalk.com for thoughts from other users.

Or look at the dedicated servers from the other companies posted in that thread I linked to :023:

2 Likes

I am not very good at distribution. Is there some book/tutorial etc on how to deploy Phoenix in a distributed way, say deploying it on 4 smaller dedicated servers.

1 Like