我的服务器可以容纳多少个用户?

我的服务器可以容纳多少个用户?

有人告诉我要切换到 nginx 或至少切换到 mpm_worker。但实际上,即使使用 mpm_prefork,我如何才能估计我的服务器是否真的没有过载?

我的系统是:

  1. GCP 1 CPU + 3.75GB
  2. Debian 8
  3. 带有 mpm_prefork 的 Apache 2.4
  4. Varnish缓存,Memcache

一些 php.ini 设置

max_execution_time = 30
max_input_time = 60
memory_limit = 1536M

其他一些各种标准的 apache 模块,没有 fastcgi 和 php-fpm。

<IfModule mpm_prefork_module>
    StartServers             5
    MinSpareServers       5
    MaxSpareServers      10
    MaxRequestWorkers     250
    MaxConnectionsPerChild   0
</IfModule>

KeepAlive Off

我上面有大约 20 个小型 wordpress 博客。

那么我可以在所有网站上同时容纳多少个用户呢?我不需要确切的数字。我想知道是 10 个、100 个还是 1000 个?可能不是 10000 个。但如果同时在线人数是 250 人左右 - 我认为目前还不错。

另外,我应该将内存限制设置为 3GB 吗?或者让剩下的 2GB 供 varnish 使用是个好主意?

Completed 1000 requests
Finished 1000 requests
Server Software:        Apache/2.4.10
Server Hostname:        sochi.asp.sale
Server Port:            443
SSL/TLS Protocol:       TLSv1.2,ECDHE-RSA-AES256-GCM-SHA384,2048,256
Document Path:          /
Document Length:        199165 bytes
Concurrency Level:      100
Time taken for tests:   12.041 seconds
Complete requests:      1000
Failed requests:        0
Total transferred:      199546499 bytes
HTML transferred:       199165000 bytes
Requests per second:    83.05 [#/sec] (mean)
Time per request:       1204.067 [ms] (mean)
Time per request:       12.041 [ms] (mean, across all concurrent requests)
Transfer rate:          16184.28 [Kbytes/sec] received
Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:       12  711 1471.9    307    6868
Processing:    23  492 960.2    253    7588
Waiting:        2  302 957.0     76    7043
Total:         35 1203 2005.6    524    7629
Percentage of the requests served within a certain time (ms)
  50%    524
  66%    534
  75%    608
  80%    644
  90%   7164
  95%   7186
  98%   7188
  99%   7189
 100%   7629 (longest request)

答案1

我猜,可能不到 100 就会开始变慢。作为参考,我本周对客户服务器进行了负载测试。规格是:4 核 4GB RAM 2 核 litespeed 带 lsapi 处理程序 PHP 7 MariaDB 10 并且是一个编码非常好的网站。

最慢的页面可能需要 300 个并发连接,然后每页的加载速度才会低于 4 秒。

当没有负载时,TTFB 约为 50ms

话虽如此,我不太了解 Nginx+varnish 能处理什么,所以你可能会得到类似的结果。不过我建议添加额外的核心,并降低 PHP 内存限制。如果一个简单的 wordpress 博客需要超过 256M,那么就出问题了。

最简单的方法是自己进行负载测试 ->https://httpd.apache.org/docs/2.4/programs/ab.html

答案2

考虑到您有 Varnish,如果出现以下情况,它很容易就 > 1000:

  • 您已正确配置 Varnish (VCL)
  • 博客没有太多的动态特性(即不是 Woocommerce 支持的商店) - 大多是静态文章。

相关内容