Over the years I've used three different types of MUD host. These are; Free Shared Hosting, Commercial Shared Hosting, and Virtual Private Server. In this blog entry I'm going to talk a little about all these models.
Free Shared Hosting
There are those who will offer to host your mud on their server for no charge at all. Over the years there have been many of these, some disappearing after a few months, others staying around for years. The reason I call it Shared hosting is because you generally live side by side with a number of other mud owners. Now, there is essentially just one positive thing with a Free Shared Host, but it's a big one: It's completely free. How can you beat that? Well, actually you can, depending on your requirements.
The disadvantages are numerous. First off you can't expect any support. You may get support, even good support, but you can't depend on this. The second disadvantage is that you can't expect the 99.997% uptime that the real pros can offer. The server can often be unavailable for shorter or longer periods. Thirdly it's unlikely that the host will install all the software you want, or configure everything to your taste. For smaller applications and libraries you can of course install them in your home directory. But what if the host uses MySQL, but you really need PostgreSQL? What if the host doesn't have a database server at all? Then you're basically screwed, unless the administrator is unusually flexible. The final disadvantage that comes to mind is that you're not safe from sudden and permanent shutdown. Certainly, a commercial host can also shutdown, but in the case of a free host there's no guarantee that you will get a warning, or indeed be able you retrieve your code.
Note that some free hosts are actually just as good, if not better, than commercial ones. And others are more or less run from a 13-year old's bedroom over a DSL connection. More on selecting a free host below.
When to use a Free Shared Host? Provided you can get an account with one of the better ones, a free host is great during the early stage of your MUD. As you work on code and content, before opening the doors, a free host can be a great alternative. But when you're getting close to accepting players you should seriously consider one of the alternatives below.
How to select a Free Shared Host? Although I'm sure some will be offended by this, I have to say that the single most important thing is: How long have the host been running its service? If it has done this for a few years, it's a good chance they'll stick around a little longer. If it opened a few weeks ago, then use great caution. This fresh host can be great, but you can also risk that it goes down in a month, that the administrator is very inexperienced in running a server, and/or that the server haven't been fully configured yet. Next try finding information about the server(s). Is it hosted at home, like this: http://caius.totj.net/hosting.jpg ? Is it in a proper datacenter? Somewhere in between? And last, but certainly not least: Talk to people who are, or have been, using the host.
To sum up: Use a free host while you're still closed for players, and spend some time finding the right one.
Commercial Shared Hosting
The biggest advantage over a free host is the uptime, reliability and support you can expect. Some of the same disadvantages still applies. In fact, I've sometimes even found it harder to get commercial hosts to install new software. They tend to be conservative in this area because they are (with good reason) concerned about the integrity of the system. That being said, don't fool yourself. You can in most cases live with older versions of software. You probably don't really need GCC 4.2.x. Version 3.4 is fine in almost all cases. Similarly you probably don't need the latest versions of PHP, MySQL, etc. The problem is, again, if you need software that is either too large to install in your home directory or that needs to run in the background as a daemon/server process.
When to use Commercial Shared Hosting? You should leave the free host behind when you start accepting players, or preferably some time before that. The advantage of this hosting scheme compared to VPS (see below) is that you don't have to worry about administering the server. Let the pros handle it while you concentrate on developing your MUD.
How to select a Commercial Shared Host? Naturally you'll be interested in the price. Depending on the host, and depending on the resources you need, price can vary from $2/mo to $20 or more. Pay attention to things like disk space, RAM, and CPU quotas. As an example, my C++ mud takes 55MB disk space when compiled with full debug symbols (-g3 option in GCC), and it's not even bloated. C++ object code takes a lot of space. So having two instances of the mud (player port and development port), a code repository and a web site can easily require about 150MB or so. If you have to install additional software in your home directory we're looking at 200MB+. I recommend going for at least 300MB. On the other hand you may also choose to start small and upgrade your plan as you need it. Also, if you develop your mud separetely from the player port (and you really should), you will want to have at least two ports assigned to your account. Some hosts will give you this automatically, others will require you to upgrade your plan. So to sum up: Compare the various hosts carefully, and make sure you know your requirements in advance.
Virtual Private Server (VPS)
If you're handy with a Linux shell you may want to consider a VPS. A VPS is basically a virtual computer, so you will have root access and in most respects be the administrator of your own server. The advantages are obvious: Install exactly the software you want, create additional user accounts for your other coders (if applicable), unlimited number of emails, tweak all settings to your needs, use as many, and which, ports as you want, etc. You're Master of the House!
However, with great power comes great responsibility (sic). Unless you're willing to pay for support you have to deal with all the headaches of running a server. A lot of the services you need can be tricky to configure just right, and when something goes wrong you can only point your finger at yourself. Another potential problem is that, unless you've got a thick wallet, you may find that you run out of memory quickly. The cheapest plans comes with anything from 64 to 256MB RAM, which will require you to get a little creative when running a few server processes. Unlike a real dedicated server you usually can't set up your own swap file beyond what your provider gives you. On the other hand, they also tend to come with great processing power and plenty of disk space. This hosting alternative will require you to spend much time on the server in addition to developing your MUD. You should also be aware that you can't expect to get exactly the Linux distro you want. The provider usually gives you a handful of disk images to choose from. On the other hand it usually takes less than a minute to install a different distro, so you can try them all.
When to use VPS? When you want (almost) full control over everything.
How to select a VPS provider? As with anything else the prices vary a lot, and they're not always a measure of what you get. They can range from $6/mo to $100/mo or more. Personally I found a good deal with 128MB guaranteed RAM (256MB burstable), 10GB disk space, powerful processors, 100GB bandwitdh/mo, running CentOS 5 (more or less same as Red Hat Enterprise Linux 5). For this I pay $8.50/mo, which I think is a very good price. The only problem is the limited memory (I'll talk about that in a later blog). There are a lot of providers to choose from, so I advice spending time before picking one. Most of them have special deals every now and then, so keep your eyes open.
Conclusion
My recommendation, then, is starting out with a free host, then move on as your project outgrows it. When choosing between Commercial Shared Hosting and Virtual Private Server your main concern should be whether you're ready to be a system administrator or not. Don't assume that a shared host is cheaper, because it's not always true.
Good luck with your MUD. I hope you found some of these points useful.
Keywords: MUD hosting, Server, VPS



Comments
In fact, here's a pic of him that Dragona took for me awhile back, we had to make him pose away from the computers to get him to show up well, but he was on his dinner break anyway...