Khả năng chịu tải của OpenLiteSpeed, benchmark bằng wrk2

Trong bài đăng này tôi tiến hành đo đạc độ trễ phản hồi của OLS bằng wrk2, và có so sánh nhanh nó với cài đặt tương tự trên Nginx.

Môi trường thử nghiệm của OLS:

  • VPS Vultr 1GB RAM, HP AMD64, Location: Nhật Bản.
  • Cài dựa vào app có sẵn trên Vultr có tên OpenLiteSpeed WordPress.
  • Cache: plugin LiteSpeed cache, áp dụng mẫu cache cơ bản Essentials.

Môi trường thử nghiệm của Nginx:

  • VPS Vultr 1GB RAM, HP AMD64, Location: Nhật Bản.
  • Cài Nginx thuần dựa vào panel HestiaCP.
  • Cache: FastCGI cache.

Cả 2 đều cài theme WP mặc định Twenty Twenty-Five, và link test bài là sample-page/

Benchmark VPS OLS bằng YABS:

Cấu hình VPS cài OLS đo bằng YABS
Cấu hình VPS cài OLS đo bằng YABS

Các chỉ số này là ngang ngửa với cấu hình VPS cài Nginx với cùng thông số & vị trí, cấu hình của VPS Nginx là:

Cấu hình VPS cài Nginx đo bằng YABS
Cấu hình VPS cài Nginx đo bằng YABS
  • IOPS ngang nhau
  • GB6 của OLS bằng khoảng 95% so với Nginx
  • Tốc độ mạng ra bên ngoài của VPS Nginx tốt hơn, nhưng xét ngưỡng 500MB/s thì chúng đều vượt rất xa.

Một số hạn chế của so sánh này:

  • Hai VPS không hoàn toàn giống nhau: mặc dù có các chỉ số benchmark rất ngang ngửa (cố gắng đặt cùng vị trí và lấy thông số khi lựa chọn giống nhau) thì cấu hình thực tế của chúng vẫn chênh khoảng 5%. Tuy vậy mức chênh này là nhỏ so với mức chênh lệnh hay gặp khi bạn chọn 2 VPS ngẫu nhiên (dù các chỉ số khác & giá cả giống nhau).
  • Không phải so sánh thuần túy giữa OLS & Nginx: cài đặt OLS giống với OLS thuần túy hơn, trong khi cài đặt Nginx tuy là Nginx thuần nhưng vẫn phải thông qua panel Hestia, và panel đồ họa, hoặc các cài đặt thừa khác của Hestia có thể ảnh hưởng. Nói tóm lại nó giống với so sánh OLS và Nginx thuần nhưng thông qua các công cụ tiện dùng, chứ không hoàn toàn loại bỏ hết các yếu tố ảnh hưởng. Ưu điểm của biện pháp này là nó trong thực tế lại là cách đa số người dùng sẽ làm, vì cách cài đặt thô hoàn toàn hầu như vượt quá kỹ năng của mọi người.

Tóm tắt nhanh kết quả:

  • Nginx thắng nhẹ trong đa số các bài kiểm tra, nhưng chênh lệnh không quá lớn về giá trị tuyệt đối.
  • Tuy nhiên OLS lại thắng trong bài kiểm tra cận quá tải, và đây là điều cần lưu ý & kiểm tra lại thêm. Tuy nhiên mức chịu quá tải này cũng không chênh nhiều. Nginx chịu được ngưỡng -t2 -c50 -R800 thì quá tải, còn OLS là -t2 -c50 -R700. Mức chênh không quá lớn về tốc độ kết nối trên giây này có thể xuất phát từ việc Nginx chưa được tối ưu hoàn toàn.
  • Trong điều kiện quá tải (khi thời gian phản hồi tăng mạnh, gấp 10 lần trong điều kiện thông thường), Nginx lại thắng, nhưng chiến thắng này ít ý nghĩa, vì trong điều kiện đó người dùng thường rời bỏ trang trước khi nó tải xong, nhất là khi quá tải cao.

Kết luận: Qua bài test này có thể kết luận sơ bộ OLS & Nginx cho kết quả nhìn chung là ngang ngửa nhau, với lợi thế đôi chút nghiêng về Nginx trong đa số điều kiện, nhưng OLS lại nhỉnh hơn một chút trong điều kiện cận quá tải.


Kết quả của OLS

1. wrk2 -t2 -c10 -d30s -R100 –latency

root@Korea:~# wrk2 -t2 -c10 -d30s -R100 --latency https://1000mostcommonwords.net/sample-page/
Running 30s test @ https://1000mostcommonwords.net/sample-page/
  2 threads and 10 connections
  Thread calibration: mean lat.: 55.729ms, rate sampling interval: 109ms
  Thread calibration: mean lat.: 55.628ms, rate sampling interval: 109ms
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    55.74ms   15.61ms 244.86ms   96.30%
    Req/Sec    49.74      7.63    73.00     80.05%
  Latency Distribution (HdrHistogram - Recorded Latency)
 50.000%   53.18ms
 75.000%   53.60ms
 90.000%   54.97ms
 99.000%  142.98ms
 99.900%  219.26ms
 99.990%  244.99ms
 99.999%  244.99ms
100.000%  244.99ms

  Detailed Percentile spectrum:
       Value   Percentile   TotalCount 1/(1-Percentile)

      51.967     0.000000            2         1.00
      52.415     0.100000          204         1.11
      52.703     0.200000          422         1.25
      52.895     0.300000          631         1.43
      53.023     0.400000          822         1.67
      53.183     0.500000         1047         2.00
      53.215     0.550000         1102         2.22
      53.311     0.600000         1238         2.50
      53.375     0.650000         1317         2.86
      53.471     0.700000         1404         3.33
      53.599     0.750000         1512         4.00
      53.695     0.775000         1569         4.44
      53.759     0.800000         1602         5.00
      53.855     0.825000         1651         5.71
      54.047     0.850000         1701         6.67
      54.367     0.875000         1752         8.00
      54.559     0.887500         1776         8.89
      54.975     0.900000         1800        10.00
      55.519     0.912500         1825        11.43
      56.351     0.925000         1850        13.33
      57.567     0.937500         1875        16.00
      59.039     0.943750         1887        17.78
      60.127     0.950000         1900        20.00
      69.887     0.956250         1912        22.86
      71.359     0.962500         1925        26.67
      74.431     0.968750         1937        32.00
      75.135     0.971875         1943        35.56
      75.967     0.975000         1950        40.00
      77.759     0.978125         1957        45.71
      78.335     0.981250         1962        53.33
      79.295     0.984375         1968        64.00
     120.511     0.985938         1971        71.11
     121.663     0.987500         1975        80.00
     124.927     0.989062         1978        91.43
     168.959     0.990625         1981       106.67
     169.471     0.992188         1984       128.00
     169.727     0.992969         1985       142.22
     170.879     0.993750         1987       160.00
     196.607     0.994531         1989       182.86
     216.191     0.995313         1990       213.33
     217.087     0.996094         1992       256.00
     217.087     0.996484         1992       284.44
     217.215     0.996875         1993       320.00
     217.343     0.997266         1995       365.71
     217.343     0.997656         1995       426.67
     217.727     0.998047         1996       512.00
     217.727     0.998242         1996       568.89
     217.727     0.998437         1996       640.00
     219.263     0.998633         1997       731.43
     219.263     0.998828         1997       853.33
     219.391     0.999023         1998      1024.00
     219.391     0.999121         1998      1137.78
     219.391     0.999219         1998      1280.00
     219.391     0.999316         1998      1462.86
     219.391     0.999414         1998      1706.67
     244.991     0.999512         1999      2048.00
     244.991     1.000000         1999          inf
#[Mean    =       55.739, StdDeviation   =       15.610]
#[Max     =      244.864, Total count    =         1999]
#[Buckets =           27, SubBuckets     =         2048]
----------------------------------------------------------
  3000 requests in 30.03s, 144.21MB read
Requests/sec:     99.91
Transfer/sec:      4.80MB

OLS:

 50.000%   53.18ms
 75.000%   53.60ms
 90.000%   54.97ms
 99.000%  142.98ms
 99.900%  219.26ms
 99.990%  244.99ms
 99.999%  244.99ms
100.000%  244.99ms

Nginx thắng nhẹ (thông tin kết quả đầy đủ của Nginx ở đây):

 50.000%   47.90ms
 75.000%   48.26ms
 90.000%   48.61ms
 99.000%   95.61ms
 99.900%  196.86ms
 99.990%  198.01ms
 99.999%  198.01ms
100.000%  198.01ms

2. wrk2 -t2 -c20 -d30s -R200 –latency

root@Korea:~# wrk2 -t2 -c20 -d30s -R200 --latency https://1000mostcommonwords.net/sample-page/
Running 30s test @ https://1000mostcommonwords.net/sample-page/
  2 threads and 20 connections
  Thread calibration: mean lat.: 55.452ms, rate sampling interval: 108ms
  Thread calibration: mean lat.: 55.390ms, rate sampling interval: 107ms
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    52.16ms   13.80ms 218.88ms   98.40%
    Req/Sec   100.01      8.54   129.00     71.97%
  Latency Distribution (HdrHistogram - Recorded Latency)
 50.000%   49.41ms
 75.000%   52.90ms
 90.000%   53.53ms
 99.000%  122.82ms
 99.900%  218.11ms
 99.990%  219.01ms
 99.999%  219.01ms
100.000%  219.01ms

  Detailed Percentile spectrum:
       Value   Percentile   TotalCount 1/(1-Percentile)

      47.551     0.000000            2         1.00
      48.127     0.100000          419         1.11
      48.415     0.200000          837         1.25
      48.671     0.300000         1208         1.43
      48.959     0.400000         1636         1.67
      49.407     0.500000         2013         2.00
      52.191     0.550000         2203         2.22
      52.447     0.600000         2430         2.50
      52.607     0.650000         2635         2.86
      52.735     0.700000         2800         3.33
      52.895     0.750000         3015         4.00
      52.991     0.775000         3131         4.44
      53.087     0.800000         3232         5.00
      53.151     0.825000         3303         5.71
      53.279     0.850000         3422         6.67
      53.407     0.875000         3515         8.00
      53.471     0.887500         3554         8.89
      53.535     0.900000         3607        10.00
      53.631     0.912500         3664        11.43
      53.727     0.925000         3704        13.33
      53.855     0.937500         3752        16.00
      53.951     0.943750         3775        17.78
      54.111     0.950000         3805        20.00
      54.303     0.956250         3827        22.86
      54.463     0.962500         3851        26.67
      54.751     0.968750         3877        32.00
      54.975     0.971875         3887        35.56
      55.263     0.975000         3901        40.00
      56.383     0.978125         3912        45.71
      57.599     0.981250         3925        53.33
      71.039     0.984375         3937        64.00
      74.687     0.985938         3943        71.11
      76.543     0.987500         3951        80.00
     121.215     0.989062         3956        91.43
     123.647     0.990625         3962       106.67
     147.455     0.992188         3968       128.00
     167.679     0.992969         3971       142.22
     170.367     0.993750         3975       160.00
     170.751     0.994531         3978       182.86
     171.391     0.995313         3981       213.33
     199.807     0.996094         3984       256.00
     215.551     0.996484         3985       284.44
     215.807     0.996875         3987       320.00
     217.215     0.997266         3989       365.71
     217.343     0.997656         3990       426.67
     217.855     0.998047         3994       512.00
     217.855     0.998242         3994       568.89
     217.855     0.998437         3994       640.00
     217.855     0.998633         3994       731.43
     218.111     0.998828         3995       853.33
     218.623     0.999023         3996      1024.00
     218.623     0.999121         3996      1137.78
     218.623     0.999219         3996      1280.00
     218.751     0.999316         3997      1462.86
     218.751     0.999414         3997      1706.67
     219.007     0.999512         3999      2048.00
     219.007     1.000000         3999          inf
#[Mean    =       52.160, StdDeviation   =       13.800]
#[Max     =      218.880, Total count    =         3999]
#[Buckets =           27, SubBuckets     =         2048]
----------------------------------------------------------
  6001 requests in 30.05s, 288.53MB read
Requests/sec:    199.70
Transfer/sec:      9.60MB

OLS:

 50.000%   49.41ms
 75.000%   52.90ms
 90.000%   53.53ms
 99.000%  122.82ms
 99.900%  218.11ms
 99.990%  219.01ms
 99.999%  219.01ms
100.000%  219.01ms

Ngang ngửa, Nginx thắng nhẹ lúc đầu, thua phần giữa, xong lại thắng phần cuối

 50.000%   47.78ms
 75.000%   48.22ms
 90.000%   48.64ms
 99.000%  143.74ms
 99.900%  198.27ms
 99.990%  203.13ms
 99.999%  203.13ms
100.000%  203.13ms

3. wrk2 -t2 -c50 -d30s -R500 –latency

root@Korea:~# wrk2 -t2 -c50 -d30s -R500 --latency https://1000mostcommonwords.net/sample-page/
Running 30s test @ https://1000mostcommonwords.net/sample-page/
  2 threads and 50 connections
  Thread calibration: mean lat.: 77.670ms, rate sampling interval: 161ms
  Thread calibration: mean lat.: 78.433ms, rate sampling interval: 161ms
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    71.27ms   10.65ms 269.31ms   94.01%
    Req/Sec   250.15     72.21   331.00     65.04%
  Latency Distribution (HdrHistogram - Recorded Latency)
 50.000%   70.85ms
 75.000%   73.66ms
 90.000%   77.06ms
 99.000%   86.59ms
 99.900%  227.58ms
 99.990%  250.37ms
 99.999%  269.57ms
100.000%  269.57ms

  Detailed Percentile spectrum:
       Value   Percentile   TotalCount 1/(1-Percentile)

      52.223     0.000000            1         1.00
      63.679     0.100000          995         1.11
      66.559     0.200000         1995         1.25
      68.415     0.300000         3016         1.43
      69.759     0.400000         4033         1.67
      70.847     0.500000         5018         2.00
      71.423     0.550000         5524         2.22
      71.935     0.600000         6007         2.50
      72.511     0.650000         6528         2.86
      72.959     0.700000         6966         3.33
      73.663     0.750000         7484         4.00
      74.047     0.775000         7728         4.44
      74.431     0.800000         7970         5.00
      74.879     0.825000         8211         5.71
      75.519     0.850000         8475         6.67
      76.287     0.875000         8707         8.00
      76.671     0.887500         8840         8.89
      77.055     0.900000         8960        10.00
      77.439     0.912500         9088        11.43
      78.271     0.925000         9206        13.33
      79.231     0.937500         9330        16.00
      79.679     0.943750         9398        17.78
      80.255     0.950000         9461        20.00
      80.639     0.956250         9516        22.86
      81.087     0.962500         9579        26.67
      81.855     0.968750         9646        32.00
      82.175     0.971875         9676        35.56
      82.495     0.975000         9712        40.00
      82.687     0.978125         9737        45.71
      83.071     0.981250         9764        53.33
      83.519     0.984375         9796        64.00
      83.711     0.985938         9811        71.11
      83.967     0.987500         9829        80.00
      84.671     0.989062         9842        91.43
      86.719     0.990625         9858       106.67
      86.975     0.992188         9874       128.00
      87.103     0.992969         9881       142.22
      87.423     0.993750         9888       160.00
     122.175     0.994531         9896       182.86
     127.999     0.995313         9904       213.33
     172.159     0.996094         9913       256.00
     174.207     0.996484         9916       284.44
     175.999     0.996875         9919       320.00
     179.839     0.997266         9923       365.71
     204.415     0.997656         9927       426.67
     210.943     0.998047         9931       512.00
     215.039     0.998242         9933       568.89
     215.935     0.998437         9935       640.00
     221.951     0.998633         9937       731.43
     227.455     0.998828         9939       853.33
     229.887     0.999023         9941      1024.00
     230.527     0.999121         9942      1137.78
     232.703     0.999219         9943      1280.00
     245.887     0.999316         9946      1462.86
     245.887     0.999414         9946      1706.67
     245.887     0.999512         9946      2048.00
     245.887     0.999561         9946      2275.56
     248.063     0.999609         9947      2560.00
     248.063     0.999658         9947      2925.71
     250.239     0.999707         9948      3413.33
     250.239     0.999756         9948      4096.00
     250.239     0.999780         9948      4551.11
     250.367     0.999805         9949      5120.00
     250.367     0.999829         9949      5851.43
     250.367     0.999854         9949      6826.67
     250.367     0.999878         9949      8192.00
     250.367     0.999890         9949      9102.22
     269.567     0.999902         9950     10240.00
     269.567     1.000000         9950          inf
#[Mean    =       71.269, StdDeviation   =       10.649]
#[Max     =      269.312, Total count    =         9950]
#[Buckets =           27, SubBuckets     =         2048]
----------------------------------------------------------
  14527 requests in 30.07s, 698.91MB read
Requests/sec:    483.10
Transfer/sec:     23.24MB

OLS:

 50.000%   70.85ms
 75.000%   73.66ms
 90.000%   77.06ms
 99.000%   86.59ms
 99.900%  227.58ms
 99.990%  250.37ms
 99.999%  269.57ms
100.000%  269.57ms

Nginx thắng khá rõ ràng, giá trị % đáng chú ý (từ 20-40% nhanh hơn), nhưng giá trị tuyệt đối chỉ khoảng 20 – 40ms (lưu ý 1ms = 1/1000s), rất khó cảm nhận sự khác biệt trong thực tế.

 50.000%   51.33ms
 75.000%   52.42ms
 90.000%   53.79ms
 99.000%  151.93ms
 99.900%  219.52ms
 99.990%  225.02ms
 99.999%  225.28ms
100.000%  225.28ms

4. wrk2 -t2 -c50 -d30s -R700 –latency

root@Korea:~# wrk2 -t2 -c50 -d30s -R700 --latency https://1000mostcommonwords.net/sample-page/
Running 30s test @ https://1000mostcommonwords.net/sample-page/
  2 threads and 50 connections
  Thread calibration: mean lat.: 65.955ms, rate sampling interval: 145ms
  Thread calibration: mean lat.: 53.761ms, rate sampling interval: 112ms
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    55.55ms   15.40ms 273.15ms   98.39%
    Req/Sec   351.46     25.26   520.00     80.25%
  Latency Distribution (HdrHistogram - Recorded Latency)
 50.000%   53.95ms
 75.000%   56.54ms
 90.000%   58.72ms
 99.000%  138.11ms
 99.900%  240.90ms
 99.990%  263.93ms
 99.999%  273.41ms
100.000%  273.41ms

  Detailed Percentile spectrum:
       Value   Percentile   TotalCount 1/(1-Percentile)

      47.583     0.000000            1         1.00
      48.895     0.100000         1436         1.11
      50.015     0.200000         2800         1.25
      51.775     0.300000         4211         1.43
      52.895     0.400000         5576         1.67
      53.951     0.500000         6994         2.00
      54.527     0.550000         7690         2.22
      54.975     0.600000         8376         2.50
      55.487     0.650000         9075         2.86
      56.031     0.700000         9757         3.33
      56.543     0.750000        10487         4.00
      56.831     0.775000        10833         4.44
      57.119     0.800000        11179         5.00
      57.471     0.825000        11515         5.71
      57.887     0.850000        11857         6.67
      58.239     0.875000        12196         8.00
      58.463     0.887500        12387         8.89
      58.719     0.900000        12555        10.00
      59.071     0.912500        12724        11.43
      59.487     0.925000        12891        13.33
      59.903     0.937500        13069        16.00
      60.191     0.943750        13162        17.78
      60.383     0.950000        13239        20.00
      60.703     0.956250        13333        22.86
      61.407     0.962500        13415        26.67
      62.047     0.968750        13502        32.00
      62.303     0.971875        13549        35.56
      62.591     0.975000        13589        40.00
      63.967     0.978125        13631        45.71
      66.623     0.981250        13674        53.33
      77.247     0.984375        13718        64.00
      95.615     0.985938        13740        71.11
     111.423     0.987500        13761        80.00
     127.615     0.989062        13783        91.43
     145.407     0.990625        13805       106.67
     162.047     0.992188        13827       128.00
     171.903     0.992969        13838       142.22
     178.815     0.993750        13848       160.00
     187.519     0.994531        13859       182.86
     196.479     0.995313        13870       213.33
     203.007     0.996094        13881       256.00
     211.199     0.996484        13887       284.44
     214.911     0.996875        13892       320.00
     219.263     0.997266        13897       365.71
     221.311     0.997656        13903       426.67
     225.919     0.998047        13908       512.00
     230.783     0.998242        13911       568.89
     232.831     0.998437        13914       640.00
     234.879     0.998633        13916       731.43
     239.999     0.998828        13919       853.33
     241.663     0.999023        13922      1024.00
     242.047     0.999121        13923      1137.78
     245.375     0.999219        13925      1280.00
     246.015     0.999316        13926      1462.86
     246.783     0.999414        13927      1706.67
     248.959     0.999512        13929      2048.00
     248.959     0.999561        13929      2275.56
     249.727     0.999609        13930      2560.00
     250.239     0.999658        13931      2925.71
     250.239     0.999707        13931      3413.33
     252.927     0.999756        13932      4096.00
     252.927     0.999780        13932      4551.11
     254.591     0.999805        13933      5120.00
     254.591     0.999829        13933      5851.43
     254.591     0.999854        13933      6826.67
     263.935     0.999878        13934      8192.00
     263.935     0.999890        13934      9102.22
     263.935     0.999902        13934     10240.00
     263.935     0.999915        13934     11702.86
     263.935     0.999927        13934     13653.33
     273.407     0.999939        13935     16384.00
     273.407     1.000000        13935          inf
#[Mean    =       55.553, StdDeviation   =       15.396]
#[Max     =      273.152, Total count    =        13935]
#[Buckets =           27, SubBuckets     =         2048]
----------------------------------------------------------
  20632 requests in 30.05s, 0.97GB read
Requests/sec:    686.52
Transfer/sec:     33.02MB

OLS:

 50.000%   53.95ms
 75.000%   56.54ms
 90.000%   58.72ms
 99.000%  138.11ms
 99.900%  240.90ms
 99.990%  263.93ms
 99.999%  273.41ms
100.000%  273.41ms

OLS thắng. Nó không bị hiện tượng quá tải, trong khi Nginx bị quá tải ở ngưỡng 98,4%, khi thời gian phản hồi đột ngột tăng lên hơn 2s, và đến 99% thì 3s.

 50.000%   56.26ms
 75.000%   60.54ms
 90.000%   64.45ms
 99.000%    3.01s
 99.900%    4.06s
 99.990%    4.14s
 99.999%    4.14s
100.000%    4.14s

Khi cờ -R lên 800 thì OLS cũng bắt đầu cho kết quả tệ như Nginx ở 700:

 50.000%   55.23ms
 75.000%   58.59ms
 90.000%   63.52ms
 99.000%    4.17s
 99.900%    6.66s
 99.990%    6.89s
 99.999%    6.92s
100.000%    6.92s

Kết quả đầy đủ:

root@Korea:~# wrk2 -t2 -c50 -d30s -R800 --latency https://1000mostcommonwords.net/sample-page/
Running 30s test @ https://1000mostcommonwords.net/sample-page/
  2 threads and 50 connections
  Thread calibration: mean lat.: 55.657ms, rate sampling interval: 118ms
  Thread calibration: mean lat.: 105.629ms, rate sampling interval: 407ms
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   134.71ms  612.45ms   6.91s    98.41%
    Req/Sec   400.06     21.50   449.00     66.20%
  Latency Distribution (HdrHistogram - Recorded Latency)
 50.000%   55.23ms
 75.000%   58.59ms
 90.000%   63.52ms
 99.000%    4.17s
 99.900%    6.66s
 99.990%    6.89s
 99.999%    6.92s
100.000%    6.92s

  Detailed Percentile spectrum:
       Value   Percentile   TotalCount 1/(1-Percentile)

      47.455     0.000000            1         1.00
      48.863     0.100000         1623         1.11
      50.559     0.200000         3183         1.25
      52.511     0.300000         4752         1.43
      53.983     0.400000         6334         1.67
      55.231     0.500000         7952         2.00
      55.775     0.550000         8709         2.22
      56.383     0.600000         9501         2.50
      57.119     0.650000        10303         2.86
      57.823     0.700000        11105         3.33
      58.591     0.750000        11879         4.00
      59.103     0.775000        12270         4.44
      59.647     0.800000        12665         5.00
      60.319     0.825000        13067         5.71
      61.119     0.850000        13460         6.67
      62.079     0.875000        13859         8.00
      62.783     0.887500        14060         8.89
      63.519     0.900000        14251        10.00
      64.639     0.912500        14448        11.43
      66.751     0.925000        14648        13.33
      70.655     0.937500        14847        16.00
      79.295     0.943750        14940        17.78
     104.383     0.950000        15039        20.00
     130.559     0.956250        15138        22.86
     161.023     0.962500        15237        26.67
     188.543     0.968750        15336        32.00
     202.751     0.971875        15385        35.56
     214.783     0.975000        15435        40.00
     227.327     0.978125        15485        45.71
     238.975     0.981250        15534        53.33
    2779.135     0.984375        15583        64.00
    3178.495     0.985938        15608        71.11
    3526.655     0.987500        15633        80.00
    3911.679     0.989062        15657        91.43
    4349.951     0.990625        15682       106.67
    4829.183     0.992188        15707       128.00
    5050.367     0.992969        15719       142.22
    5279.743     0.993750        15732       160.00
    5492.735     0.994531        15744       182.86
    5689.343     0.995313        15756       213.33
    5881.855     0.996094        15769       256.00
    6029.311     0.996484        15775       284.44
    6131.711     0.996875        15781       320.00
    6230.015     0.997266        15787       365.71
    6340.607     0.997656        15793       426.67
    6451.199     0.998047        15800       512.00
    6500.351     0.998242        15803       568.89
    6541.311     0.998437        15806       640.00
    6590.463     0.998633        15809       731.43
    6635.519     0.998828        15812       853.33
    6676.479     0.999023        15815      1024.00
    6709.247     0.999121        15817      1137.78
    6721.535     0.999219        15818      1280.00
    6754.303     0.999316        15820      1462.86
    6774.783     0.999414        15821      1706.67
    6807.551     0.999512        15823      2048.00
    6823.935     0.999561        15824      2275.56
    6823.935     0.999609        15824      2560.00
    6840.319     0.999658        15825      2925.71
    6852.607     0.999707        15826      3413.33
    6873.087     0.999756        15827      4096.00
    6873.087     0.999780        15827      4551.11
    6873.087     0.999805        15827      5120.00
    6889.471     0.999829        15828      5851.43
    6889.471     0.999854        15828      6826.67
    6901.759     0.999878        15829      8192.00
    6901.759     0.999890        15829      9102.22
    6901.759     0.999902        15829     10240.00
    6901.759     0.999915        15829     11702.86
    6901.759     0.999927        15829     13653.33
    6918.143     0.999939        15830     16384.00
    6918.143     1.000000        15830          inf
#[Mean    =      134.706, StdDeviation   =      612.453]
#[Max     =     6914.048, Total count    =        15830]
#[Buckets =           27, SubBuckets     =         2048]
----------------------------------------------------------
  23458 requests in 30.03s, 1.10GB read
Requests/sec:    781.20
Transfer/sec:     37.56MB

5. wrk2 -t2 -c50 -d30s -R1000 –latency

root@Korea:~# wrk2 -t2 -c50 -d30s -R1000 --latency https://1000mostcommonwords.net/sample-page/
Running 30s test @ https://1000mostcommonwords.net/sample-page/
  2 threads and 50 connections
  Thread calibration: mean lat.: 805.565ms, rate sampling interval: 2832ms
  Thread calibration: mean lat.: 962.624ms, rate sampling interval: 3143ms
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     3.27s     1.00s    6.15s    60.61%
    Req/Sec   418.00      5.80   430.00     76.92%
  Latency Distribution (HdrHistogram - Recorded Latency)
 50.000%    3.24s
 75.000%    4.06s
 90.000%    4.60s
 99.000%    5.46s
 99.900%    5.99s
 99.990%    6.14s
 99.999%    6.16s
100.000%    6.16s

  Detailed Percentile spectrum:
       Value   Percentile   TotalCount 1/(1-Percentile)

    1416.191     0.000000            1         1.00
    1916.927     0.100000         1669         1.11
    2234.367     0.200000         3334         1.25
    2596.863     0.300000         4997         1.43
    2916.351     0.400000         6659         1.67
    3241.983     0.500000         8314         2.00
    3403.775     0.550000         9147         2.22
    3579.903     0.600000         9982         2.50
    3743.743     0.650000        10813         2.86
    3911.679     0.700000        11642         3.33
    4063.231     0.750000        12473         4.00
    4145.151     0.775000        12888         4.44
    4227.071     0.800000        13313         5.00
    4304.895     0.825000        13738         5.71
    4390.911     0.850000        14143         6.67
    4481.023     0.875000        14557         8.00
    4538.367     0.887500        14773         8.89
    4595.711     0.900000        14977        10.00
    4653.055     0.912500        15178        11.43
    4730.879     0.925000        15387        13.33
    4796.415     0.937500        15588        16.00
    4833.279     0.943750        15695        17.78
    4878.335     0.950000        15803        20.00
    4939.775     0.956250        15906        22.86
    5001.215     0.962500        16004        26.67
    5083.135     0.968750        16111        32.00
    5115.903     0.971875        16161        35.56
    5165.055     0.975000        16213        40.00
    5201.919     0.978125        16265        45.71
    5251.071     0.981250        16316        53.33
    5308.415     0.984375        16375        64.00
    5337.087     0.985938        16394        71.11
    5373.951     0.987500        16422        80.00
    5431.295     0.989062        16447        91.43
    5496.831     0.990625        16473       106.67
    5570.559     0.992188        16498       128.00
    5595.135     0.992969        16514       142.22
    5611.519     0.993750        16524       160.00
    5652.479     0.994531        16537       182.86
    5701.631     0.995313        16550       213.33
    5754.879     0.996094        16563       256.00
    5763.071     0.996484        16569       284.44
    5808.127     0.996875        16576       320.00
    5853.183     0.997266        16584       365.71
    5881.855     0.997656        16589       426.67
    5902.335     0.998047        16595       512.00
    5935.103     0.998242        16599       568.89
    5955.583     0.998437        16602       640.00
    5971.967     0.998633        16606       731.43
    5980.159     0.998828        16609       853.33
    6004.735     0.999023        16612      1024.00
    6017.023     0.999121        16613      1137.78
    6033.407     0.999219        16615      1280.00
    6037.503     0.999316        16616      1462.86
    6041.599     0.999414        16618      1706.67
    6053.887     0.999512        16619      2048.00
    6066.175     0.999561        16620      2275.56
    6086.655     0.999609        16621      2560.00
    6098.943     0.999658        16622      2925.71
    6115.327     0.999707        16623      3413.33
    6115.327     0.999756        16623      4096.00
    6131.711     0.999780        16624      4551.11
    6131.711     0.999805        16624      5120.00
    6139.903     0.999829        16625      5851.43
    6139.903     0.999854        16625      6826.67
    6139.903     0.999878        16625      8192.00
    6148.095     0.999890        16626      9102.22
    6148.095     0.999902        16626     10240.00
    6148.095     0.999915        16626     11702.86
    6148.095     0.999927        16626     13653.33
    6148.095     0.999939        16626     16384.00
    6156.287     0.999945        16627     18204.44
    6156.287     1.000000        16627          inf
#[Mean    =     3267.350, StdDeviation   =     1001.252]
#[Max     =     6152.192, Total count    =        16627]
#[Buckets =           27, SubBuckets     =         2048]
----------------------------------------------------------
  24586 requests in 30.00s, 1.15GB read
Requests/sec:    819.42
Transfer/sec:     39.40MB

Nginx thắng, nhưng chiến thắng này không quá nhiều ý nghĩa, ở ngưỡng tải này cả 2 VPS đều quá sức chịu đựng, khi thời gian phản hồi trung bình tăng hơn 10 lần so với điều kiện chưa vượt ngưỡng.

 50.000%    2.75s
 75.000%    3.33s
 90.000%    3.72s
 99.000%    4.11s
 99.900%    4.33s
 99.990%    4.43s
 99.999%    4.45s
100.000%    4.45s

6. wrk2 -t2 -c100 -d30s -R2000 –latency

root@Korea:~# wrk2 -t2 -c100 -d30s -R2000 --latency https://1000mostcommonwords.net/sample-page/
Running 30s test @ https://1000mostcommonwords.net/sample-page/
  2 threads and 100 connections
  Thread calibration: mean lat.: 1811.774ms, rate sampling interval: 5877ms
  Thread calibration: mean lat.: 1889.106ms, rate sampling interval: 6053ms
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     5.86s     1.70s   15.11s    66.71%
    Req/Sec   717.17     20.59   733.00     83.33%
  Latency Distribution (HdrHistogram - Recorded Latency)
 50.000%    5.76s
 75.000%    7.07s
 90.000%    7.90s
 99.000%   10.65s
 99.900%   14.53s
 99.990%   15.01s
 99.999%   15.12s
100.000%   15.12s

  Detailed Percentile spectrum:
       Value   Percentile   TotalCount 1/(1-Percentile)

    2867.199     0.000000            1         1.00
    3749.887     0.100000         2839         1.11
    4268.031     0.200000         5669         1.25
    4747.263     0.300000         8499         1.43
    5230.591     0.400000        11360         1.67
    5758.975     0.500000        14172         2.00
    6037.503     0.550000        15583         2.22
    6311.935     0.600000        16998         2.50
    6574.079     0.650000        18427         2.86
    6815.743     0.700000        19845         3.33
    7065.599     0.750000        21268         4.00
    7192.575     0.775000        21962         4.44
    7323.647     0.800000        22663         5.00
    7454.719     0.825000        23381         5.71
    7581.695     0.850000        24081         6.67
    7729.151     0.875000        24791         8.00
    7811.071     0.887500        25147         8.89
    7897.087     0.900000        25501        10.00
    7999.487     0.912500        25853        11.43
    8110.079     0.925000        26206        13.33
    8228.863     0.937500        26564        16.00
    8290.303     0.943750        26734        17.78
    8359.935     0.950000        26912        20.00
    8445.951     0.956250        27091        22.86
    8544.255     0.962500        27273        26.67
    8683.519     0.968750        27449        32.00
    8822.783     0.971875        27531        35.56
    9060.351     0.975000        27619        40.00
    9355.263     0.978125        27708        45.71
    9641.983     0.981250        27798        53.33
    9920.511     0.984375        27888        64.00
   10076.159     0.985938        27930        71.11
   10239.999     0.987500        27973        80.00
   10485.759     0.989062        28018        91.43
   10821.631     0.990625        28062       106.67
   11296.767     0.992188        28106       128.00
   11632.639     0.992969        28128       142.22
   12034.047     0.993750        28150       160.00
   12451.839     0.994531        28173       182.86
   12828.671     0.995313        28195       213.33
   13156.351     0.996094        28217       256.00
   13328.383     0.996484        28229       284.44
   13492.223     0.996875        28239       320.00
   13680.639     0.997266        28250       365.71
   13860.863     0.997656        28261       426.67
   14073.855     0.998047        28272       512.00
   14172.159     0.998242        28278       568.89
   14278.655     0.998437        28285       640.00
   14376.959     0.998633        28290       731.43
   14442.495     0.998828        28294       853.33
   14548.991     0.999023        28300      1024.00
   14606.335     0.999121        28303      1137.78
   14647.295     0.999219        28305      1280.00
   14696.447     0.999316        28308      1462.86
   14745.599     0.999414        28311      1706.67
   14802.943     0.999512        28314      2048.00
   14811.135     0.999561        28315      2275.56
   14835.711     0.999609        28316      2560.00
   14876.671     0.999658        28318      2925.71
   14893.055     0.999707        28319      3413.33
   14934.015     0.999756        28321      4096.00
   14934.015     0.999780        28321      4551.11
   14958.591     0.999805        28322      5120.00
   14999.551     0.999829        28323      5851.43
   14999.551     0.999854        28323      6826.67
   15007.743     0.999878        28324      8192.00
   15007.743     0.999890        28324      9102.22
   15056.895     0.999902        28325     10240.00
   15056.895     0.999915        28325     11702.86
   15056.895     0.999927        28325     13653.33
   15073.279     0.999939        28326     16384.00
   15073.279     0.999945        28326     18204.44
   15073.279     0.999951        28326     20480.00
   15073.279     0.999957        28326     23405.71
   15073.279     0.999963        28326     27306.67
   15122.431     0.999969        28327     32768.00
   15122.431     1.000000        28327          inf
#[Mean    =     5859.213, StdDeviation   =     1699.486]
#[Max     =    15114.240, Total count    =        28327]
#[Buckets =           27, SubBuckets     =         2048]
----------------------------------------------------------
  40400 requests in 30.00s, 1.90GB read
Requests/sec:   1346.64
Transfer/sec:     64.74MB

Ngang ngửa, nhưng một lần nữa, điều kiện tải này vượt quá xa sức chịu đựng của cả hai nền tảng.

50.000%    6.16s
 75.000%    7.61s
 90.000%    8.36s
 99.000%    8.89s
 99.900%    9.08s
 99.990%    9.23s
 99.999%    9.30s
100.000%    9.30s

7. Tải thời gian dài trong điều kiện gần đến ngưỡng quá tải

root@Korea:~# wrk2 -t2 -c50 -d90s -R500 --latency https://1000mostcommonwords.net/sample-page/
Running 2m test @ https://1000mostcommonwords.net/sample-page/
  2 threads and 50 connections
  Thread calibration: mean lat.: 52.655ms, rate sampling interval: 109ms
  Thread calibration: mean lat.: 61.023ms, rate sampling interval: 123ms
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    54.16ms   11.06ms 227.07ms   98.70%
    Req/Sec   250.54     56.31   414.00     88.99%
  Latency Distribution (HdrHistogram - Recorded Latency)
 50.000%   53.38ms
 75.000%   56.06ms
 90.000%   58.37ms
 99.000%   67.78ms
 99.900%  211.97ms
 99.990%  219.01ms
 99.999%  227.20ms
100.000%  227.20ms

  Detailed Percentile spectrum:
       Value   Percentile   TotalCount 1/(1-Percentile)

      46.239     0.000000            4         1.00
      48.351     0.100000         4108         1.11
      49.087     0.200000         8006         1.25
      50.623     0.300000        12059         1.43
      52.127     0.400000        16038         1.67
      53.375     0.500000        20091         2.00
      53.919     0.550000        22049         2.22
      54.463     0.600000        24045         2.50
      55.007     0.650000        26086         2.86
      55.519     0.700000        28068         3.33
      56.063     0.750000        29966         4.00
      56.383     0.775000        31035         4.44
      56.703     0.800000        32015         5.00
      57.023     0.825000        33035         5.71
      57.343     0.850000        33977         6.67
      57.759     0.875000        34991         8.00
      58.047     0.887500        35476         8.89
      58.367     0.900000        35964        10.00
      58.719     0.912500        36459        11.43
      59.071     0.925000        36990        13.33
      59.583     0.937500        37458        16.00
      59.935     0.943750        37707        17.78
      60.255     0.950000        37947        20.00
      60.639     0.956250        38215        22.86
      61.023     0.962500        38448        26.67
      61.567     0.968750        38702        32.00
      61.887     0.971875        38834        35.56
      62.175     0.975000        38946        40.00
      62.463     0.978125        39076        45.71
      63.007     0.981250        39197        53.33
      63.967     0.984375        39319        64.00
      64.735     0.985938        39382        71.11
      65.535     0.987500        39446        80.00
      67.199     0.989062        39507        91.43
      68.159     0.990625        39569       106.67
     102.207     0.992188        39631       128.00
     109.567     0.992969        39664       142.22
     113.983     0.993750        39694       160.00
     145.919     0.994531        39725       182.86
     156.543     0.995313        39756       213.33
     161.407     0.996094        39789       256.00
     163.327     0.996484        39804       284.44
     167.039     0.996875        39819       320.00
     190.207     0.997266        39834       365.71
     202.879     0.997656        39850       426.67
     206.207     0.998047        39866       512.00
     207.231     0.998242        39874       568.89
     208.255     0.998437        39881       640.00
     209.919     0.998633        39889       731.43
     210.943     0.998828        39897       853.33
     212.095     0.999023        39904      1024.00
     212.607     0.999121        39910      1137.78
     212.735     0.999219        39913      1280.00
     213.247     0.999316        39916      1462.86
     213.631     0.999414        39920      1706.67
     214.271     0.999512        39924      2048.00
     214.783     0.999561        39927      2275.56
     214.911     0.999609        39928      2560.00
     215.039     0.999658        39930      2925.71
     216.319     0.999707        39933      3413.33
     216.447     0.999756        39935      4096.00
     216.447     0.999780        39935      4551.11
     216.703     0.999805        39936      5120.00
     218.111     0.999829        39937      5851.43
     219.007     0.999854        39939      6826.67
     219.007     0.999878        39939      8192.00
     219.007     0.999890        39939      9102.22
     219.135     0.999902        39940     10240.00
     219.135     0.999915        39940     11702.86
     221.439     0.999927        39941     13653.33
     221.439     0.999939        39941     16384.00
     221.439     0.999945        39941     18204.44
     223.999     0.999951        39942     20480.00
     223.999     0.999957        39942     23405.71
     223.999     0.999963        39942     27306.67
     223.999     0.999969        39942     32768.00
     223.999     0.999973        39942     36408.89
     227.199     0.999976        39943     40960.00
     227.199     1.000000        39943          inf
#[Mean    =       54.162, StdDeviation   =       11.057]
#[Max     =      227.072, Total count    =        39943]
#[Buckets =           27, SubBuckets     =         2048]
----------------------------------------------------------
  44746 requests in 1.50m, 2.10GB read
Requests/sec:    496.89
Transfer/sec:     23.89MB

Nginx thắng nhẹ:

 50.000%   48.35ms
 75.000%   49.09ms
 90.000%   49.98ms
 99.000%  146.05ms
 99.900%  201.21ms
 99.990%  204.93ms
 99.999%  221.18ms
100.000%  221.18ms

Viết một bình luận