负载测试:不稳定错误“连接被拒绝”

问题描述 投票:1回答:1

环境:

  • Ubuntu 18.04.1,DigitalOcean:RAM 2Gb + 2CPU

  • Nginx(OpenResty)+ Lua

我在做什么:

我试图通过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配置中的问题吗?还是操作系统?

下面我正在改变的以下数字(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
ubuntu nginx lua load-testing connection-refused
1个回答
0
投票

问题出在我的家庭路由器中

无法应付这样的负担

通过更换路由器解决了问题

© www.soinside.com 2019 - 2024. All rights reserved.