测试NGINX和uwsgi.ini设置

1.uwsgi修改测试

将服务器升级到16核16G配置后,我将uwsgi.ini中的部分参数调整如下:

processes = 32
threads = 16

结果是导致内存暴满,然后直接服务器都无法连接,导致服务器卡死。之前有博客说processes=处理器*2,结果出现这么个情况,后续设置processes=16,threads=2, max-requests=500结果好很多,内存使用率在60%左右,但是还是有在慢慢提高,暂时试试看最后结果如何

1.1查看CPU信息命令:lscpu

 uwsgi中设置threads=2,是因为看到CPU信息显示的threads为2,就设置为2试试看结果。

2.NGINX修改测试

 

nginx.conf文件中,worker_processes 为 auto; 所以随着配置升级,这个参数会自动改动为16个worker进程,还有一个需要修改的参数为worker_connections, 这个我一直用的是默认1024,我查看资料说这个参数可以调大,设置为:系统的最大打开文件数>= worker_connections*worker_process

查看系统最大打开文件数命令:

ulimit -n

按照公式,应该设置worker_connections = 65535 / 16 = 4096

这里设置worker_connections = 8192

此处参考:nginx优化:worker_processes/worker_connections/worker_rlimit_nofile - 刘宏缔的架构森林 - 博客园

PS:

NGINX性能测试:Tuning NGINX for Better Performance | Cloudbees Blog

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
UWSGI (Ultra Fast Web Server Gateway Interface) 是一个高性能的 Web 和应用程序服务器接口,常用于与像 Django、Flask 或 Pyramid 这样的 Web 框架一起使用,提供高性能的 WSGI 应用程序服务器解决方案。它可以作为一个独立的服务运行,也可以作为其他 Web 服务器(如 Nginx)的后端。 `uwsgi.ini` 是 UWSGI配置文件,它详细定义了应用程序的运行参数和设置,比如连接数、工作线程、内存限制、日志设置、网络选项、热重启策略等。配置文件通常包含以下几个部分: 1. **Server Settings**:基本信息,如服务器地址、端口、socket类型。 ```ini [uwsgi] socket = 127.0.0.1:8000 ``` 2. **Application Configuration**:指定应用模块及其相关的模块路径。 ```ini app = example:app # 或者 uwsgi_app:application callable = app # 如果是函数而不是类 ``` 3. **Process Management**:如何管理和启动工作进程、主进程数量等。 ```ini processes = 4 # 并行工作进程的数量 workers = 2 * $cpu # 根据CPU核心数动态调整 ``` 4. **Logging and Monitoring**:设置日志级别、输出位置以及错误处理。 ```ini logto = /var/log/uwsgi/app.log log-exceptions = true ``` 5. **Advanced Options**:包括缓存、内存限制、信号处理、热重启策略等。 ```ini harakiri = 60s # 连接超时时间 master = true # 使用master模式,主进程管理其他工作进程 reload-mercy = 10s # 主进程重启期间的宽容时间 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值