如何在nginx配置中为open_file_cache选择正确的值?

我有一个网站,每分钟加载约60 000个请求由Nginx提供.最近,我启用了打开文件缓存,并且性能得到了显着提升.但在平均值中,当负载最大时,响应时间仍然非常大,而Nginx使用了大量IO.

这是我目前的设置:

open_file_cache max=10000 inactive=30s;
open_file_cache_valid    60s;
open_file_cache_min_uses 2;
open_file_cache_errors   on;

我还有一些记忆:

free -m
             total       used       free     shared    buffers     cached
Mem:          7910       6917        992          0        439        885
-/+ buffers/cache:       5592       2317
Swap:         8099          0       8099

问题:现在我为open_file_cache max = 10000和其他参数选择正确的值吗?足够10000,是太小还是大?有没有办法监控打开文件缓存的使用?

最佳答案
打开文件缓存是一个用于元数据操作的缓存系统(文件mtime,文件存在等),而不是文件内容,所以它有所帮助,但没有你想象的那么多.

您可以尝试的一些解决方法是:

>如果已打开动态gzip,请降低gzip压缩比.
>如果您运行的是最新的内核(> 2.6.22),请尝试打开aio.检查http://wiki.nginx.org/HttpCoreModule#aio
>禁用访问日志记录.仅此一项就可以为您带来非常高的性能提升.确保你不需要它!
>尝试实际的文件内容缓存模块,例如https://github.com/bpaquet/ngx_http_enhanced_memcached_module.警告:这将需要从源代码重新编译Nginx

相关文章

Nginx (engine x) 是一个高性能的HTTP和反向代理服务,也是一...
本地项目配置 1 复制 luffy/settings/dev.py为prop.py 修改l...
nginx不仅可以隐藏版本信息,还支持自定义web服务器信息 先看...
一 、此次漏洞分析 1 nginx HTTP/2漏洞 [nginx-announce] ng...
###进入nginx 目录cd /usr/local/nginx###递归显示 2 级目录...
在cmd命令窗口输入下面命令进行查看 tasklist /fi "ima...