Here at Custom PC Review, we spend a lot of our efforts on bringing news, reviews and great articles about the latest and greatest technology on the marketplace, but we don’t tend to spend too much time talking about things that happen behind the scenes.
Last year, when we published an article about our huge move from a dedicated server to a colocation with our own hardware, we had quite a fairly big response from our loyal viewers, so we decided to share this year’s server update as well. Most of you have probably noticed some downtime over the past week or so when this was all happening, so this will also double up as a status update for everyone as well.
Hardware/Colocation
Although we deal mostly with hardware, our server hardware actually hasn’t changed since last year. We’re still rocking the Lenovo ThinkServer RD540 with the Intel Xeon E5-2609V2, 32GB Kingston DDR3L-1600 ECC, and Samsung 845DC PRO 400GB in RAID 1. The server hardware has experienced zero issues over the past year and a half and we’ll be keeping our fingers crossed for down the road as well. Ideally, we’d like to also implement a database server along with some warm backup servers to ensure minimal downtime in the event of catastrophic hardware failure. Hopefully we’ll be able to make that happen before next year’s server update.
Like our server, our colocation hasn’t changed either. Psychz Networks has been a fantastic colocation with great performance and great prices. Uptime since the past year has been 99.99% with the extra due to scheduled maintenance. Ideally we’d like to also put some servers out of Los Angeles, CA just in case “the big one” hits. So far Las Vegas, NV seems like a possible option, but that’s a topic for a later time.
Overall, we haven’t seen any reason to switch up our hardware or colocation as there’s still plenty of room for additional growth. As such, our 2016 server update is going to be almost 100% software and software optimizations.
Litespeed 5.0 Web Server + PHP 5.6
We first got to experience the Litespeed web server several years ago when we decided to go with a dedicated server from WiredTree. Since at the time we were running an Apache web server, we heard about Litespeed web server which is a commercial drop-in replacement to Apache with huge performance and security improvements. After reading about all the benefits of running Litespeed from various sources around the web, we decided to give Litespeed a shot.
Since we had worked with Apache for several years prior, Litespeed was a breath of fresh air not because performance was orders of magnitude better, but rather it was downright easy to configure compared to how complicated a well optimized Apache can be. As such, after moving to our own self hosted server last year, we ended up purchasing a 1-CPU Litespeed license, which was probably already overkill for CPCR.
For 2016, we decided to pick up a 2-CPU Litespeed license which also includes Litespeed’s LSCache. We also upgraded Litespeed from version 4.0 to version 5.0, which comes with some new features, performance improvements, and security improvements. We were honestly more interested in the Litespeed LSCache than anything as Litespeed claims that it’s more efficient than other caching methods on the market. We’ll see about that… Over the next couple months we’ll be working on implementing the cache to see if Litespeed’s claims are remotely true. Stay tuned.
Along with upgrading Litespeed to 5.0, we also upgraded PHP to 5.6 for performance and security reasons. Unfortunately in PHP 5.6, PHP dropped support for APC opcode cache which had me scrambling for a replacement which turned out to be Opcache. So far it’s working well so we’ll be monitoring performance as time rolls on.
MariaDB 10.1 Database Server
When we upgraded to our new server last year, we also migrated our database from MySQL to MariaDB. For those unfamiliar with MariaDB, it’s a drop-in replacement for MySQL developed by the same original developers of MySQL. MariaDB was born largely due to Oracle’s acquisition of Sun Microsystems who owned MySQL at the time. After the acquisition, the MySQL community was afraid that Oracle might either attempt to monetize or stop development of MySQL since Oracle also owns Oracle Database which could be viewed as a competitor to MySQL.
For 2016, we upgraded to the latest version of MariaDB, MariaDB 10.1, which carries a lot of the features of MySQL 5.6. We’re still evaluating the updated database at this time, but overall we’re seeing some good performance.
Final Thoughts
So far we’ve seen response times cut in almost 1/3 which is more than we had previously expected. Overall we’re pretty happy with the current setup and although there’s quite a bit more that’s needed in terms of software optimizations, rest assured we’re still working on it. Coming up, we’ll also be publishing some tips on MySQL/MariaDB optimization which we’ve learned over the course of optimizing our own server. Until then, stay tuned!