问题描述
我正在RHEL上通过uwsgi和Nginx运行flask应用程序。我正在远程使用蝗虫进行群测试,但是在较大的服务调用上却遇到了几乎100%的失败,这些服务通过json返回10,000条记录。在使用Nginx之前,该问题始终被报告为“远程主机关闭了连接”,但是现在我有了Nginx,却遇到502错误。
Nginx uwsgi中有哪些配置选项,以便在终止连接之前更宽容更大的有效负载?也许这是我需要在蝗虫测试端设置的东西,但是我怀疑主机是否正在重置连接。我在其他主机上运行蝗虫。
如果这是Linux问题(套接字上的队列大小),我真的不知道从哪里开始。由于某些原因,尽管我落后于Nginx可能会改变某些东西,但是如果问题出在uwsgi或RHEL本身上,那显然是行不通的。
它是一个相当大的AWS计算服务器,具有15 Gb的RAM。
奇怪的是,它似乎正在“热身”,在测试开始时给了我100%的失败,但后来又减少了。
[uwsgi]
# http = :5000
socket = ariel-api.sock
chmod-socket = 664
vacuum = true
# stats = :5001
# listen = 1000
# stats-http = true
die-on-term = true
wsgi-file = wsgi.py
callable = app
master = true
http-timeout = 360
threads = 8
single-interpreter = true
disable-logging = true
harakiri = 360 ; forcefully kill workers after 360 seconds
py-callos-afterfork = true ; allow workers to trap signals
max-requests = 1000 ; Restart workers after this many requests
max-worker-lifetime = 360 ; Restart workers after this many seconds
reload-on-RSS = 2048 ; Restart workers after this much resident memory
worker-reload-mercy = 360 ; How long to wait before forcefully killing workers
cheaper-algo = spare2
workers = 128 ; Maximum number of workers allowed
cheaper = 32 ; Minimum number of workers allowed
cheaper-initial = 32 ; Workers created at startup
cheaper-overload = 1 ; Length of a cycle in seconds
cheaper-step = 16 ; How many workers to spawn at a time
cheaper-idle = 60 ; Cheap one worker per minute while idle
~
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)