In my quest to make my sites load as quickly as possible, without any major sacrifices, I was wondering if perhaps a slower TTFB (Time to First Byte) was happening because my VPS wasn’t as fast as it could be. Since I had a trial credit I was going to lose, I decided to try running one of my sites from a larger VPS.
Vultr has three main servers to select from currently – it seems they change their offerings slightly over time. And even within those three options, there are several additional options. <Follow this link to test it out for yourself – this will give you a $100 credit for use in the first 30 days>
They offer a bare metal server – which to the best of my understanding is you actually are using your own complete dedicated server – that’s their most expensive option. There is no “virtualization” on the bare metal servers.
Then they have “cloud compute” which is what this site is currently running (as of the date of this post at least). You can choose how many shared vCPUs you want your VPS to have, as well as RAM and hard drive space, etc.
Recently, they added an “optimized cloud compute”. Going through their description, the main difference seems to be “no noisy neighbors” – in other words you don’t share your vCPU, whereas the basic cloud compute has vCPU sharing. They must have a way to guarantee that you always have full access to the vCPU amount you are paying for. With the shared vCPU, they must have some overselling of the available resources, knowing most people don’t use 100% CPU most of the time.
I don’t know how much control they have over abusive neighbors to prevent overuse of resources for lengths of time, or how they handle if multiple people on the same physical server use most of their resources most of the time – that would be a set-up for poor performance.
I did test out the various options a bit. I don’t have a need for the Optimized Cloud Compute, as none of my websites are mission critical, especially with regards to speed. Optimized Cloud Compute seems like a good option if you need to have the resources guaranteed available at all times. For me, I have found the regular cloud compute plenty good. I also found that the Intel High Frequency option seems to outperform the other options. I did some simple load testing and testing of the SSD speed and settled on that option.
The bottom line of my test was that getting additional resources did not improve my already fast website loading. I was trying to improve my TTFB to get it below 100 consistently, but having more CPU power did not make any difference. I’m guessing the “slow” TTFB (250-350ms) is more network or other overhead in the system. The only way I was able to get the TTFB to be consistently below 100 was by using a “cache everything” option on Cloudflare. In other words, use a Content Delivery Network (CDN) to cache entire state webpages. That’s great if you have a static website, but not so great if you have dynamic elements to your site.
Bottom line – more CPU power won’t help TTFB if you have low loads on the server. What I expected, but now I’ve tested it out.