温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Apache HTTP服务器的缓存功能介绍

发布时间:2020-06-21 21:02:12 来源:亿速云 阅读:107 作者:鸽子 栏目:建站服务器

Apache HTTP服务器提供了一系列缓存功能,旨在以各种方式提高服务器的性能。

三态RFC2616 HTTP缓存 

mod_cache及其提供者模块mod_cache_disk提供智能的HTTP感知缓存。内容本身存储在缓存中,mod_cache旨在遵守控制内容可缓存性的所有各种HTTP头和选项。

mod_cache针对简单和复杂的缓存配置,可以在其中处理代理内容,动态本地内容,或者需要加速对可能较慢的磁盘上的本地文件的访问。

双状态键/值共享对象缓存

共享对象缓存API(socache)及其提供程序模块提供基于服务器范围的键/值共享对象缓存。这些模块旨在缓存低级别数据,例如SSL会话和身份验证凭据。

后端允许数据在服务器范围内存储在共享内存中,或者数据中心内存储在缓存中,例如memcache或distcache。

专门的文件缓存

mod_file_cache提供了在服务器启动时将文件预加载到内存中的功能,并且可以改善访问时间并保存经常访问的文件上的文件句柄,因为不需要在每个请求上转到磁盘。

三态RFC2616 HTTP缓存

HTTP协议包含对RFC2616第13节描述的内联缓存机制的内置支持,mod_cache模块可用于利用此功能。

与简单的两个状态键/值缓存不同,其中内容在不再新鲜时完全消失,HTTP缓存包括保留陈旧内容的机制,并询问源服务器此陈旧内容是否已更改,如果不是则再次刷新。

HTTP缓存中的条目存在以下三种状态之一:

Fresh

如果内容足够新(比其新鲜寿命更年轻),则认为是Fresh。HTTP缓存可以免费提供新内容,而无需对源服务器进行任何调用。

Stale

如果内容太旧(早于其新鲜度生命周期),则认为是Stale。HTTP缓存应联系原始服务器,并在向客户端提供过时内容之前检查内容是否仍然是新的。

如果原始服务器仍然无效,则原始服务器将使用替换内容进行响应,或者理想情况下,源服务器将使用代码进行响应以告知缓存内容仍然是新的,而无需再次生成或发送内容。内容再次变得新,循环继续。

HTTP协议允许缓存在某些情况下提供过时数据,例如当尝试使用源服务器刷新数据时出现5xx错误,或者另一个请求已经在刷新给定条目的过程中。在这些情况下,会在响应中添加警告标头。

Non Existent

如果缓存已满,则保留从缓存中删除内容以腾出空间的选项。内容可以随时删除,可以是旧或新。htcacheclean工具可以一次性运行,或者作为守护程序部署,以使缓存的大小保持在给定大小或给定数量的inode内。在尝试删除新内容之前,该工具会尝试删除旧内容。

以上就是如何使用Apache HTTP Server的缓存功能的详细内容,更多请关注亿速云其它相关文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI