如何在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!

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。