nginx常见问题和坑
开启Nginx Proxy Cache性能不升反降
开启Nginx Proxy Cache后,性能下降,而且过一段时间内存使用率到达98%,解决方案如下。
1、内存占用率高的问题是内核问题,内核使用LRU机制,本身不是问题,不过可以通过修改内核参数来改善:
sysctl -w vm.extra_free_kbytes=6463787
sysctl -w vm.vfs_cache_pressure=10000
2、在HDD上使用Proxy Cache性能差,可以通过tmpfs缓存或nginx共享字典缓存元数据,或者使用SSD
“惊群”问题
管理进程+工作进程模式有很多优点,同时也有一些问题需要解决
Nginx 里的工作进程 般是按系统 CPU 核数配置的,有多少个 CPU 核心,就会配置多少个工作进程,工作进程启动时就会利用 fork 函数创建多少个工作进程,并且所有的工作进程都监听在 nginx.conf内配置的监听端口上,这样可以充分利用多核机器的性能。网络事件通过底层的 events 模块管理,当客户端连接请求到来时, 一个新连接事件会上报,各个
作进程就会发生对事件的抢夺,这就是“惊群”问题 工作进程越多,问题越明显,这会造成系统性能下降,所以,