MyBB Community Forums

Full Version: Guidance on Provisioning for MyBB?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi Community!

I'm planning my first production deployment of MyBB and seeking guidance on sizing the initial server. Can anyone point me to official recommendations or unofficial empirical information? Looking for guidance on effectiveness of concurrency across multiple cores, RAM per concurrent session, concurrency of app page-to-database connections, typical data storage requirements per X threads/posts, etc. Platform is LAMP.

Hope someone can help. Thanks!
Hi there sloban!

MyBB doesn't have very large requirements in terms of server resources, unless you're planning to host a forum on there that already has a very large audience.

Concurrency-related stuff depends on how you set up your HTTP server (Apache/nginx) and PHP (perhaps php-fpm if using nginx). MyBB itself doesn't spawn a process or use multiple cores itself, but the server and PHP might. Most benchmarks show nginx scaling better across cores and resources than Apache (handles things on an event-based system), but you can make them pretty close with the right configurations.

RAM per session should be pretty small. On most pages, it seems like about 10ish MB of RAM is given to the PHP handler for the request over the course of processing a given page (short amount of time). MySQL can be a bit more of a resource hog, unless you tune it a bit. I'm no expert in that department, but MySQL without tweaks often uses around 100-200MB of RAM on an Ubuntu VPS in my experience. PHP doesn't tend to use a whole lot. Apache can sometimes use a lot, and nginx *tends* to be a bit better in that department (anecdotally).

Quote:app page-to-database connections

About 10-20 queries per page are done over one connection, which is then released.

You can get away with as low as a 256MB VPS if you set up MySQL in its small or tiny config, nginx, and php-fpm. This will probably get you around 20-30 actual-active users at once without much of a problem. I know I was able to get to a concurrency of 60 users on blitz.io when testing a 512MB VPS a few years back (on 1.6 before the optimizations that came with 1.8).

Quote:data storage requirements per X threads/posts, etc.

Not much. I know our database here is just a few gigabytes. That's over a million posts, 145k threads, 83k members, who-knows-how-many PMs (team members are PM hogs!). If you allow things like attachment uploads that might be used semi-often, I'd worry about those more in terms of disk usage, compared to the database. Yes, it will grow eventually, but not that quickly.

I haven't set things up with Apache in a long time now, so I don't have good numbers for you there in that department (kinda an nginx fanboy overall). You should be fine with almost anything sane if you're just starting out. Pick a company that allows you to scale up easily from a control panel, and you shouldn't have to worry too much right now!

We'll always be here if you need help!
Thanks very much, Josh! A very helpful response.