The biggest instance has 250k users, and the top 10 instances together have 600k user (75% of of those 800k). I don't have info how these large instances map to actual servers, but I don't think Mastodon currently has a lot in the way of features to split an instance across machines.
(Data from https://instances.social)
Has the internet really regressed so much that developers would also make the argument that it's a better idea to have one or two email providers, for instance, than have it be a distributed system? What about many wordpress instances, etc?
For example, I have 100 Mastodon instances running using 8 VMs at https://masto.host/
I can tell you that a VM with 2vCPUs can run 30 small instances easily (CPU load average under 50%) as long as you have 1GB of RAM for each.
So, if you have a server running, I am sure you can add Mastodon to it and the only thing you will notice is the 1GB of RAM usage. If you want to install it for a small group of users, just find a sharing hosting space like mine or go with a $3 VPS and you will be more than fine.
I have instances with a couple of thousands of users and it runs smoothly with shared resources.
It really depends on what you want to build. If you want to create an instance for a small specific group of people or you want to open it to the masses. I haven't tested concurrent users but I can tell you from all the instances I run, nobody ever mentioned an issue of slowing down when experiencing heavy traffic.
I have noticed that cPanel has been pushing RoR https://documentation.cpanel.net/display/ALD/Ruby+on+Rails and I haven't tested it or know of the security implications but I am pretty sure that with enough tweaking one could install Mastodon on a cPanel server with other apps running in PHP.
(I imagine there's a handful of popular
servers for each language)
As far as I can see, there's a handful of servers, full stop. Some level of criticality exists and is yet to be achieved here.Edit: gosh no, I'm completely wrong. I looked at the instance list at https://joinmastodon.org/ but didn't see there was a scrollbar!
Either way, 1. If you take out the 5 largest servers, the average drops significantly. I don't have the numbers available now, but the average may go to 50 without the top 5 largest servers. 2. The biggest barrier to getting more people to set up servers is that it requires a lot of resources (a.k.a. more money going to your favorite VPS provider), with the reputation of a fiddly install being a close second.