负载测试:不稳定错误 "Connection refused"

Load Testing: unstable error "Connection refused"

环境:

我在做什么:

我尝试通过 HTTPS 发送这样的简单 POST 请求:(这是 YandexTank 的格式)

[Host: myserver.com]
[Content-Type: application/x-www-form-urlencoded]
80 /api
xxxxxx=777777777&yyyyyyy=666666666&zzzzzzzz=ce96c7c3-87e5-4b90-b1e5-9664697aa5b6

计划是:30 秒内 100RPS。

我看到的:

第一个 ≈ 1700 - 1900 个请求成功,状态为 200。但随后... 大约 99% 的错误请求响应为:“111 连接被拒绝” 代码为 200

的最多 1% 成功请求

如果我等待 30 秒并重新启动负载测试,我什至不会有 1600 个成功请求!第一个请求已经出现错误“111 连接被拒绝”。

如果我等待 10 分钟并重新启动负载测试,第一种情况将重复(1700 - 1900 - 成功,其他 - 错误)。


我的问题:

任何建议,我应该配置哪些参数来修复错误?它是 NGINX 配置中的问题吗?或 OS?

下面的数字我做了不同的更改(worker_processes、worker_rlimit_nofile、worker_connections、keepalive_timeout)。

谢谢!


配置:

Nginx

user  www-data;
worker_processes  4;

error_log  logs/error.log;
error_log  logs/error.log debug;

worker_rlimit_nofile 33000;

events {
    worker_connections  4000;
    use epoll;
    multi_accept on;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    reset_timedout_connection on;
    sendfile        on;
    keepalive_timeout 15;

    include '/etc/nginx/sites-enabled/*';
}

文件(服务器+位置)

...
    location ~ ^/api {
        content_by_lua '
            ngx.say("OK")
            return ngx.exit(200)
        ';
    }
...

ulimit -n

200000

问题出在我家的路由器上

它无法应付这样的负载

更换路由器问题已解决