Nginx文件描述符缓存--open_file_cache

标签(空格分隔): nginx


NGINX虽然已经对静态内容做过优化。但在高流量网站的情况下,仍然可以使用open_file_cache进一步提高性能。 NGINX缓存将最近使用的文件描述符和相关元数据(如修改时间,大小等)存储在缓存中。缓存不会存储所请求文件的内容。

1 open_file_cache

启用此指令将存储以下信息的缓存:

  1. 打开的文件描述符和相关元数据,如大小,修改时间等
  2. 文件和目录的存在与查找相关的任何错误,例如“权限被拒绝”,“文件未找到”等
  3. 缓存定义固定大小,并且在溢出期间,它移除最近最少使用(LRU)元素。
  4. 缓存在一段时间不活动之后逐出元素。 默认情况下禁用该指令。

如下例子:

http{
   open_file_cache max=1000 inactive=20s;
}

在上述配置中,为1,000个元素定义了一个缓存。 inactive参数配置到期时间为20秒。 没有必要为该指令设置非活动时间段,默认情况下,非活动时间段为60秒。
NGINX还定义了一些相关的指令,可用于在错误和有效性检查期间配置open_file_cache的行为。

2 open_file_cache_valid

NGINX的open_file_cache保存信息的快照。 由于信息在源处更改,快照可能在一段时间后无效。 open_file_ cache_valid指令定义时间段(以秒为单位),之后将重新验证open_file_cache中的元素。默认情况下,60秒后重新检查元素。 如下例子:

http{
   open_file_cache_valid 30s;
}

3 open_file_cache_min_uses

NGINX将在非活动时间段之后从高速缓存中清除元素。 此指令可用于配置最小访问次数以将元素标记为活动使用。 默认情况下,最小访问次数设置为1次或更多次。如下例子

http{
   open_file_cache_min_uses 4;
}

4 open_file_cache_errors

如前所述,NGINX可以缓存在文件访问期间发生的错误。但是这需要通过设置open_file_cache_errors指令来启用。 如果启用错误缓存,则在访问资源(不查找资源)时,NGINX会报告相同的错误。默认情况下,错误缓存设置为关闭。

http{
   open_file_cache_errors on;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,923评论 18 139
  • 1.简介:  Nginx:engine X ,2002年,开源,商业版 http协议:web服务器(类似于ht...
    尛尛大尹阅读 1,895评论 0 3
  • I/O模型Nginx介绍Nginx的安装和目录结构Nginx的配置Nginx的编译安装 一、I/O模型 (一)I/...
    哈喽别样阅读 914评论 0 4
  • 秋深了 夜静了 望月的人少了 独自分享月的姣好月的恬静 思恋 月光照得到良人的脸 空空的梦 如月儿高悬
    深海暖阳光阅读 464评论 1 1
  • 最近的一些疙瘩,总让我回忆起,长辈或者是少年曾说过的话,置身事外的人到底看的清楚些。 往日得出来的想法在重蹈覆辙的...
    素盘阅读 106评论 2 0