Get the most out of your Centmin Mod LEMP stack
Become a Member

Benchmarks 13-Way VPS Server Benchmark Comparison Tests Discussion Thread

Discussion in 'Virtual Private Server (VPS) hosting' started by eva2000, Jun 14, 2019.

  1. eva2000

    eva2000 Administrator Staff Member

    53,142
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    7:00 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    This thread is dedicated to discussing my 13-way VPS benchmark comparison test results.


    Got questions or even share your own experiences with those specific VPS provider's plans :)
     
  2. eva2000

    eva2000 Administrator Staff Member

    53,142
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    7:00 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    FYI, as noted in the vps benchmark comparison review thread, anyone can replicate the exact benchmark testing I did with a fresh virgin CentOS 7.6+ 64bit server (whether it's VPS or baremetal dedicated server based) using my installnbench2.sh script. Depending on speed of your server, such installnbench2.sh runs can take between 1.5-6+ hrs to run.

    Running installnbench2.sh



    All VPS servers will run CentOS 7.6 64bit latest after a yum update and server reboot to ensure all VPS servers are on the same page in terms of updates and Linux Kernel updates for Meltdown/Spectre variant and MDS/Zombieload vulnerability patch fixes which affect performance.
    Code (Text):
    yum -y update && reboot

    Then running installnbench2.sh script in a screen session so SSH disconnections do not abort the benchmark tests.
    Code (Text):
    mkdir -p /root/tools
    cd /root/tools
    yum -y install wget
    wget -O installnbench2.sh https://github.com/centminmod/centminmodbench/raw/master/installnbench2.sh
    chmod +x installnbench2.sh
    yum -y install screen
    screen -dmS installnbench
    screen -r installnbench
    time /root/tools/installnbench2.sh
    

    If you do get SSH session disconnected during testing, just log back in and reattach the screen session to see the benchmark that had continued to run even when SSH session was disconnected via command
    Code (Text):
    screen -r installnbench

    On completion run of benchmarks from installnbench2.sh, you can collect all the Centmin Mod install and benchmark logs via tar command below which will create a tar'd gzip compressed file at /svr-setup/all-benchmark-logs.tar.gz .
    Code (Text):
    cd /svr-setup
    tar -I pigz -cvf /svr-setup/all-benchmark-logs.tar.gz /home/centminmodbench_logs /root/centminlogs /home/sysbench
    

    Logs are mainly where the benchmark results are and 1 log is the Centmin Mod LEMP stack install log. These logs have date/timestamps appended to the end so these are just examples
    • For installnbench2.sh all centminmodbench.sh benchmark raw results which include the zcat/pzcat and geekbench results at /home/centminmodbench_logs/centminmodbench_results_130619-084257.log and /home/centminmodbench_logs/_publicreport_130619-084257.log - compacted results format with preformatted forum CODE bbcode tags wrapped around the results for easier posting/sharing on forums.
    • For Centmin Mod Nginx HTTP/2 HTTPS benchmarks - /root/centminlogs/https-benchmark-all-130619-095805.log which show raw results including how the dummy test Centmin Mod Nginx HTTP/2 HTTPS dual RSA/ECDSA SSL certificated supported vhost site was created and /root/centminlogs/h2load-nginx-https-130619-095805.log which just shows the results only for nghttp2's h2load HTTP/2 HTTPS load tester.
    • For Redis benchmark results /root/centminlogs/centminmod-benchmark-redis-tests-130619-101110.log and also markdown formatted table results within /root/centminlogs/centminmod-benchmark-redis-tests-130619-101110-markdown-*.log logs
    • For Centmin Mod Nginx HTTP/2 HTTPS vhost creation log via nv SSH commandline method of generating Nginx vhosts, /root/centminlogs/centminmod_130619-095806_nginx_addvhost_nv.log
    • For all the sysbench.sh benchmark results saved in directory at /home/sysbench. There's 100s of logs created of which the ones in tabulated markdown format are labeled as sysbench-*-markdown.log after the sysbench test done. For example for sysbench 2 cpu thread test labeled as sysbench-cpu-threads-2-markdown.log while non-markdown formatted results are in log file without markdown suffix, sysbench-cpu-threads-2.log
    • For Centmin Mod LEMP stack install log, /root/centminlogs/centminmod_123.09beta01.b185_130619-102043_install.log with raw results, /root/centminlogs/installer_130619-101111.log with raw results + breakdown of install time metrics and /root/centminlogs/installer_130619-101111_minimal.log which is compact results with some of the result verbose output stripped to result size of log and number of lines in log.
     
  3. BigIron

    BigIron Member

    64
    15
    8
    Sep 18, 2015
    Ratings:
    +19
    Local Time:
    2:00 AM
    Fantastic write-up @eva2000, I just renewed my account upgrade to show my appreciation for your hard work.

    I'm considering switching from Linode 8GB to Upcloud 8GB for our main site, where our members are located in a single geographic location (US West Coast). I'm a little concerned about reported slow network speeds with Upcloud (I've heard they only have a 500gb uplink). I'm not sure if this is something I should be worried about or even if it will affect a XenForo site which averages 500 concurrent visitors. What do you think?
     
  4. eva2000

    eva2000 Administrator Staff Member

    53,142
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    7:00 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    much appreciated mate (y)

    Less of a concern especially with 500 concurrent users if you have Cloudflare CDN in front of your Centmin Mod Nginx. Though depends on overall throughput traffic your site does.
     
  5. eva2000

    eva2000 Administrator Staff Member

    53,142
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    7:00 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    @BigIron just asked Upcloud for clarification and all their VPS servers use 1Gbit/s public network links now not 500Mbit/s :)
     
  6. BigIron

    BigIron Member

    64
    15
    8
    Sep 18, 2015
    Ratings:
    +19
    Local Time:
    2:00 AM
    Great, thank you!
     
  7. Kenny

    Kenny New Member

    3
    4
    3
    Jul 8, 2019
    Ratings:
    +4
    Local Time:
    5:00 PM
    Thanks for the hard work, I registered the forum account to say thank you here!
     
  8. eva2000

    eva2000 Administrator Staff Member

    53,142
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    7:00 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
  9. petersys

    petersys New Member

    2
    1
    3
    Jan 19, 2020
    Ratings:
    +1
    Local Time:
    10:00 AM
    I registered so I could say thank you too, that is an awesome writeup @eva2000!

    If you do another comparison, can you include a measure of the internal network latency please? I've been experimenting with putting the database on a separate server (to make upgrading the web server easier) and communicating over the private network with it. While I've yet to find a good way to measure the latency (the tools I tried - tcptraceroute, hping3 - gives a different value for RTT) my tests showed some internal networks are 2-3x slower than others (ignoring variable fluctuations).

    Two other reports I found useful, though now dated:
    They give a different kind of measure, but I appreciated them showing variability.
     
  10. eva2000

    eva2000 Administrator Staff Member

    53,142
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    7:00 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    Thanks for the kind words and suggestion. Internal networking has been on my to do list though there's so many factors and differences in how it's setup with various web hosts to make it comparable. Like for me, I always configure more specific CSF Firewall rules for internal LAN IPs which also factor into the equations. Probably would be easier to actually test MySQL workloads when a remote MySQL server is in play instead of the network layer level.
     
  11. BlueDragon69

    BlueDragon69 New Member

    8
    0
    1
    Feb 16, 2021
    Ratings:
    +0
    Local Time:
    2:30 PM
    Virgin