I’m looking to build my first real server for co-location. I’m a PHP programmer with most of my code base in that language. I’ve also moved to using JavaScript with NodeJS and recently TypeScript with Deno. I have a few performance sedative programs that I’ve also written in rust that live on the system as a system demon.
What I’m looking for is a fast U1 / U2 server. Single threaded performance being the key with the PHP-FPM / Nginx web front end (I’ve optimized the snot out of my code base on a Raspberry Pi that I use for development work then did a second pass when I moved over to the x86_64 server). My ideal solution is an NVMe drive for the OS, an Optane drive for the database and Solid State Drives for the long term storage.
AMD’s and Intel’s marketing material is shockingly bad. So I’m trying to filter on these items.
If you really want the highest possible single thread performance, go Intel. Otherwise, get an AMD Threadripper or, if your budget allows, the Epyc server line CPUs. RAM: use ECC, anything else is wasted money. As much as your budget allows and personally I’d be inclined to add more RAM over a faster proc, especially with Linux.
Which brings us to the next point: the OS. Forget Win-OS. Period. Use Ubuntu or CentOS for quick&easy, if you want more performance out of your hardware, use Gentoo or Slackware. Devuan is a good solution if you object to systemd (many do but don’t know the alternatives) and it’s essentially Debian w/o the systemd pollution so pretty solid as well. Funtoo is a Gentoo derivative that’s (quite?) a bit more bleeding edge over it’s origin distro.
And then there’s BSD. For security, choose OpenBSD. NetBSD and FreeBSD are fine too, but (slightly) less secure by default. The learning curve is quite steep, but for you as coder fairly well manageable given your RPi experiences.
True on the fees side but that’s great for the initial prototype. No upfront cost to scale out a server that will perform at the load level that meets your need, then just buy your own version of that spec. No point in buying 20 cores if 8 will do.