Ask HN: How to guesstimate the needed resources of a server?
Ever since I was a kid, I've always wondered what it took to host a World of Warcraft server with 1000 connected players.
I want to host my personal website/blog pretty soon, so of course that should really need little resources, but I'm wondering if there are some articles giving examples of common services and the resources you need to run them for an expected load. I have a server at home, so I'm thinking of deploying it on that.
9 comments
[ 160 ms ] story [ 693 ms ] thread[1]: https://www.intel.com/content/www/us/en/products/sku/92981/i...
I’m guessing the server is equipped with SSD:s? Back in the day I omce setup a local website and forgot to rotate session files created by PHP. Cost me a hard drive that did.
Are you building your website from scratch or do you intend using some platform? What kind of bandwidth do you have?
My bandwidth is 1Gb/s for each Ethernet port, but I'm using my ISP's router so I don't think it's the best, unfortunately. In the sense that, sure each port is 1Gb/s but if 1 port consumes that 1Gb/s, all the others will be throttled (even though the router supports "Up to 10Gb/s").
I haven't decided yet, but I'm probably going to use Astro[1]; lots of beautiful themes and easy set up.
[1]: https://astro.build/
I’m unfamiliar with Astro unfortunately so can’t really say too much about it.
What kind of speed do you get from your ISP? You get good latency?
Just did a speedtest on Fast.com and got 1Gbps download, 950Mbps upload and 0ms unloaded and 33ms loaded. Granted, that's not on my server.
1gps/1gps is my wet dream. The house I live in is tied into a pretty shitty ISP, didn’t know that though until after I bought the place. You live and you learn, someday I too will have a setup this beautiful.
Sorry I couldn’t be of any real help :)
No worries, if you have any questions I'd be happy to help :)
You did not get into details of your stack, but I assume NGinx for the web server? The primary determining factor of memory and performance is number of workers and number of files and sockets each worker is permitted to open. This is a big topic however. It is unlikely we could go down the rabbit hole on HN. One of the rabbit holes is configuring things like vm.panic_on_oom = 2, vm.min_free_kbytes, vm.admin_reserve_kbytes and vm.user_reserve_kbytes so that the server reboots and self heals when people run it out of memory rather than depending on the OOM killa' though your goal should be to tune the stack so that the highest load is unlikely to do that.
If you want a personal challenge, configure the VM so that it has half the memory and CPU resources of your physical server. If you can make your site performant in the minimal VM, then it will surely perform on the physical server.