Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


Advice about moving to a higher spec VPS
New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

Advice about moving to a higher spec VPS

coopercooper Member

Ok, just looking for a wee bit of advice from some more experienced hands. I'm currently hosting a site with OVH (Gravelines) on one of their VPS SSD1 plans:

  • OpenStack KVM
  • 1 vCore
  • 2.4 GHz
  • 2 GB RAM
  • 10 GB SSD
  • Local RAID 10
  • 100 Mbps - Unlimited traffic

I'm using a Wordpress theme called Newspaper from a company called Tagdiv. Their guidance on hosting is as follows:

Godaddy or other cheap shared hosting:

Should handle 1- 2000 unique users per day
Will not handle traffic spikes well
Use if possible a small amount of plugins

Budget VPS:

Should handle 2000 – 4000 unique users per day
Will not handle traffic spikes well
Get as much ram as possible

High performance VPS:

Should handle 4000 – 6000 unique users per day
Should be with more than 4GB of ram
If properly configured and with enough ram and a swap partition the server should handle traffic spikes

Dedicated server:

Should handle 6000+ unique users per day
On dedicated servers and with that traffic number, at least 8 GB of ram will help a lot
It should handle traffic spikes well

I've experienced traffic spikes of 1000 unique visitors in 3 hour periods a few times over the last couple of days and the site seemed very sluggish.

So, I want to rectify this and a higher spec VPS would seem to be the obvious answer.

The choice is between Linode and OVH because I have unused credit with them. Taking the above advice on board I'm thinking of the the $40 per month plan with Linode:

  • 8 GB RAM
  • 4 CPU Cores
  • 96 GB SSD Storage
  • 4 TB Transfer
  • 40 Gbps Network In
  • 1000 Mbps Network Out

or the VPS SSD3 plan with OVH (significantly cheaper at $15.40 per month but only 2 v cores)

  • OpenStack KVM
  • 2 vCores
  • 2.4 GHz
  • 8 GB RAM
  • 40 GB SSD
  • Local RAID 10
  • 100 Mbps - Unlimited traffic

What should my expectations be here? Would the above hardware solve my traffic spike problems? Is there a significant performance difference between the two providers?

Thanks

Comments

  • I mean a dual Xeon E5-2699v4 with 3TB RAM and 10x IntelSSD DC P4500 4TB in RAID 10 inside a https://www.supermicro.com.tw/products/system/1U/1028/SYS-1028U-TN10RT_.cfm is always a good idea for "just in case".

    I mean you never know when those traffic spikes are going to happen.

    Regardless find out. Honestly we dont know, you dont know. Go find out and find the best solution for yourself.

    Thanked by 1cooper
  • AnthonySmithAnthonySmith Member, Patron Provider

    the guidance is fairly arbitrary to be honest, you could simply optimise your web stack on your current VPS and see significant performance/capacity gains.

    Could you perhaps elaborate on your setup a bit more, e.g. OS/kernel version, web server, what optimizations you have done, caching, database, database optimization, CDN, CloudFlare caching and optimization?

    What are your current traffic numbers/spread i.e. 4000 hits in 2 hours, spread evenly over the day, the source of your traffic majority?

    Current ram use/cpu use/iops during peak times?

    All of this is significantly more important than just throwing more cpu cores and ram at the problem which may not even exist.

    Have you collected any page load time metrics?

    Thanked by 2Falzo cooper
  • quickquick Member

    You should be able to host it on a decent vps with a caching plugin.

    Thanked by 1cooper
  • coopercooper Member

    Ok, I'm using Easyengine (NGinx) with WP Supercache on Ubuntu 16.04 Server (64 bits).

    There is no CDN on the site at the moment but I do plan on implementing it.

    Traffic has all been via Facebook which explains the spikes. There is literally no organic traffic.

    I have run metrics via GTMetrix. The pagespeed score is 96% and YSlow score is 83%. However I'm not convinced as the page load times seem pretty dire to me (although they changed to displaying fully loaded times not that long ago):

    • Tested from London to Gravelines - 2.8 seconds for fully loaded time on a 660kb home page.
    • Tested from London to Gravelines - 5.0 seconds for fully loaded time on a 1.7mb internal page

    AnthonySmith said: Current ram use/cpu use/iops during peak times?

    I do not have this information. Would sysbench be the recommended way to measure this?

    Thanks

  • jgillichjgillich Member
    edited June 2017

    @cooper said:

    AnthonySmith said: Current ram use/cpu use/iops during peak times?

    I do not have this information. Would sysbench be the recommended way to measure this?

    System utilization, not system performance. I assume he's interested in what the bottleneck is. Use iostat, and, uhm, top?

    Thanked by 1cooper
  • coopercooper Member

    System Info

    • Processor : Intel Core Processor (Haswell, no TSX)
    • CPU Cores : 1
    • Frequency : 2399.998 MHz
    • Memory : 1952 MB
    • Swap : MB
    • Uptime : 44 days, 10:33,

    • OS : Ubuntu 16.04.2 LTS

    • Arch : x86_64 (64 Bit)
    • Kernel : 4.4.0-62-generic

    Speedtest (IPv4 only)

    Location Provider Speed
    CDN Cachefly 11.9MB/s

    • Atlanta, GA, US Coloat 2.56MB/s
    • Dallas, TX, US Softlayer 7.79MB/s
    • Seattle, WA, US Softlayer 7.49MB/s
    • San Jose, CA, US Softlayer 6.62MB/s
    • Washington, DC, US Softlayer 4.06MB/s

    • Tokyo, Japan Linode 6.18MB/s

    • Singapore Softlayer 5.80MB/s

    • Rotterdam, Netherlands id3.net 11.9MB/s

    • Haarlem, Netherlands Leaseweb 11.9MB/s

    Disk Speed

    • I/O (1st run) : 88.7 MB/s
    • I/O (2nd run) : 296 MB/s
    • I/O (3rd run) : 289 MB/s
    • Average I/O : 224.567 MB/s

    Results of free command

    • Total Mem: 1999140
    • Used Mem: 519144
    • Free Mem: 859924
    • Shared Mem: 86976
    • Buff/Cache: 620072
    • Available: 1149672

    Would creating a swap file have a big impact on performance?

  • coopercooper Member

    Results from iostat

    avg-cpu:

    • %user 0.74
    • %nice 0.00
    • %system 0.16
    • %iowait 0.09
    • %steal 0.02
    • %idle 98.99

    Device:

    • tps 2.29
    • kB_read/s 0.69
    • kB_wrtn/s 28.65
    • kB_read 2649089
    • kB_wrtn 109902144
  • hostfavhostfav Member, Host Rep

    Beside optimizing your website you need to find out what is making your website sluggish RAM, CPU or IOPS.

    I will recommend load testing your site on current VPS. During load testing get iostat.

    Thanked by 1cooper
  • FaiziFaizi Member

    cooper said: Ok, I'm using Easyengine (NGinx) with WP Supercache on Ubuntu 16.04 Server (64 bits).

    Maybe you could try redis full page caching instead. And don't forget to enable redis object caching on the backend.

  • williewillie Member
    edited June 2017

    2k or even 10k visitors a day is almost nothing. Figure out what is wrong with your software stack before worrying about upgrading servers, or maybe consider a static blog. The OVH vps's are astonishingly good deals for what they are. Faster uplink could be useful though, and Linode (etc.) would give you that.

    Thanked by 1cooper
  • coopercooper Member
    edited June 2017

    @Faizi said:

    cooper said: Ok, I'm using Easyengine (NGinx) with WP Supercache on Ubuntu 16.04 Server (64 bits).

    Maybe you could try redis full page caching instead. And don't forget to enable redis object caching on the backend.

    Thanks for reminding me about this. I had this enabled previously but trashed the site accidentally and never enabled it on the new install.

    Site home page now loads in 2.1 seconds instead of 2.8 seconds testing from London using GTMetrix.

  • Yeah, their guidance is a bit crap to be completely honest.

    Cache to the moon and you'll have no issues for a good while, I'm a lil' bored, so feel free to hop on Discord and we could have a go at getting your load time below 0.5s.

    Thanked by 1cooper
  • jcalebjcaleb Member

    Easy engine can do nginx cache. Might speed up things a lot without plugins

    Btw, how far are you from server? Maybe just latency issue as you have big pages almost 2mb

    Thanked by 1cooper
  • jcalebjcaleb Member

    It could also be that the vps you are into is sluggish even with just 1 user. Meaning oversold or something. 2gb is a lot for just single wp site. Sign up for a month from someone else with comparable spec, maybe linode near you, then experiment a bit.

    Thanked by 1cooper
  • coopercooper Member
    edited June 2017

    I took @ElliotJ up on his generous offer and he helped me to tweak some SSL settings. Redis cache is enabled and believe it or not an NGinx restart also seemed to improve things.

    I may be placing too much faith in the accuracy of GTMetrix metrics though.

    Previous metrics were:

    • Tested from London to Gravelines - 2.8 seconds for fully loaded time on a 660kb home page.
    • Tested from London to Gravelines - 5.0 seconds for fully loaded time on a 1.7mb internal page

    Metrics after changes

    • Tested from London to Gravelines - 1.5 seconds for fully loaded time on a 660kb home page.
    • Tested from London to Gravelines - 6.7 seconds for fully loaded time on a 1.7mb internal page

    So the home page load time shows a marked improvement. However that internal page load time is crazy.

    To confuse things more if I test the same page using the GTMetrix Dallas location and it loads quicker than the London location. This is for a site that's hosted in Gravelines France!

    • Tested from Dallas to Gravelines - 3.6 seconds for fully loaded time on a 1.7mb internal page

    Anyway, thanks for all the advice. I'm not upgrading for the moment.

  • jcalebjcaleb Member

    Maybe its a network issue

  • FaiziFaizi Member

    @jcaleb said:
    Maybe its a network issue

    Possible.

    Tested from London to Gravelines - 1.5 seconds for fully loaded time on a 660kb home page.
    Tested from London to Gravelines - 6.7 seconds for fully loaded time on a 1.7mb internal page

    Those fully loaded time are quite high for the size. Could you test with http://www.webpagetest.org/ and show us the waterfall.

  • saf31saf31 Member

    @willie said:
    2k or even 10k visitors a day is almost nothing. Figure out what is wrong with your software stack before worrying about upgrading servers, or maybe consider a static blog. The OVH vps's are astonishingly good deals for what they are. Faster uplink could be useful though, and Linode (etc.) would give you that.

    Totally agree. Even 10$/year shared hosting can handle 2k visitors/day. Like others have said I also think it might be network/latency issue. If possible can you just change your theme for a while and do the speed-test/benchmarks again? Good luck to you .

    Thanked by 1cooper
  • coopercooper Member

    @Faizi said:

    @jcaleb said:
    Maybe its a network issue

    Possible.

    Tested from London to Gravelines - 1.5 seconds for fully loaded time on a 660kb home page.
    Tested from London to Gravelines - 6.7 seconds for fully loaded time on a 1.7mb internal page

    Those fully loaded time are quite high for the size. Could you test with http://www.webpagetest.org/ and show us the waterfall.

    Here is the result from webpagetest.org for the home page:

    The interior page calls 2 Instagram embedded posts. Otherwise all images on the page are compressed.

    Do you see anything obvious?

  • FalzoFalzo Member
    edited June 2017

    there is one .js file which takes nearly a second to load despite being only ~83kb
    it's ressource nr. 19 on the home page waterfall and it seems to be also in the other screens...

    I'd say this one is blocking the rendering of the rest, because google-fonts only get loaded afterwards and so on.
    if this is a combined js-file have a look how it gets combined and esp. that the combined one gets cached and loaded statically. taking so long to load would make me suspect it to be generated dynamically every time which would obviously be not the best thing.

    combining everything isn't neccessarily always the best option. yes you can greatly reduce requests at all, but behaviour may depend ;-)

    Thanked by 1cooper
  • jcalebjcaleb Member

    Change to a lighter theme

  • coopercooper Member

    @jcaleb said:
    Change to a lighter theme

    I get what your saying and may end up doing that. However, after having invested so much time in the theme I want to be sure that there's nothing I'm not overlooking.

    Setting up a Linode just now to see if I can get better performance on their network with the same theme and some dummy content.

    @Falzo thanks for pointing that out as I missed it completely. Not sure if it's the Autoptimize plugin or the actual theme itself. I'll have a look.

  • FaiziFaizi Member

    What @Falzo said.

    There is a plugin that could help with that. You could try "Fast Velocity Minify". It's gaining popularity nowadays.

  • coopercooper Member

    @Faizi said:
    What @Falzo said.

    There is a plugin that could help with that. You could try "Fast Velocity Minify". It's gaining popularity nowadays.

    Thanks, would you recommend using this as well as Autoptimize or instead of it?

  • FaiziFaizi Member

    They both have the same function, so use either one. You can compare both to see which work for you.

    Autoptimize perform well for small size css/js. It tend to combine the files into one large file affecting TTFB. As Falzo have mentioned before, sometimes combined files can provide negative result.

  • vfusevfuse Member, Host Rep

    Load average would be a more interesting metric to look at through the day. Also since your page size is large (1.7MB) 100mbit might be a slight bottleneck as well.

  • quickquick Member

    Go with centminmod + cache enabler (plugin) + nginx pagespeed & 1gb ram = problem solved

  • jcalebjcaleb Member

    @quick said:
    Go with centminmod + cache enabler (plugin) + nginx pagespeed & 1gb ram = problem solved

    No

Sign In or Register to comment.