Apache 2.0手册中文版翻译项目 [本文译者: Daniel * ]

项目说明 | 项目进度 | 项目讨论区 | Apache手册中文版

 


mod_mem_cache - Apache HTTP服务器
<-
Apache主站 > HTTP服务器 > 文档 > 2.0版本 > 模块索引

Apache模块 mod_mem_cache

说明:基于URI的键的内容缓存
状态:Experimental
模块名:mem_cache_module
源文件:mod_mem_cache.c

概要

本模块是实验性质的。文档还在不断地扩充...

本模块需要mod_cache 提供的服务。它作为模块mod_cache 的辅助模块工作,以提供基于内存的存储管理。mod_mem_cache 模块可以按两种方法来配置:缓存打开的文件描述符,或缓存堆中的对象。在mod_proxy 模块配置成ProxyPass 方式时,mod_mem_cache对缓存本地产生的内容或后端服务内容特别有用。

被缓存的内容通过基于URI的键被保存到缓存区或从缓存区取出。带存取保护的内容不会被缓存。

指令索引

参见

top

MCacheMaxObjectCount 指令

说明:最大缓存对象数
语法:MCacheMaxObjectCount value
默认值:MCacheMaxObjectCount 1009
上下文:服务器配置
状态:Experimental
模块:mod_mem_cache

MCacheMaxObjectCount 指令设定最大缓存对象数。这个值用来生成开放哈希表。如果一个新的对象要被插入缓存,而这时缓存的最大缓存对象数已经达到,原来缓存的某个对象会被移走以允许新的需缓存的对象插入缓存。具体哪个对象被移走,是通过MCacheRemovalAlgorithm 指令指定的算法来确定的。

示例

MCacheMaxObjectCount 13001

top

MCacheMaxObjectSize 指令

说明:缓存允许的最大文档大小(以Byte为单位)
语法:MCacheMaxObjectSize bytes
默认值:MCacheMaxObjectSize 10000
上下文:服务器配置
状态:Experimental
模块:mod_mem_cache

MCacheMaxObjectSize 指令设定缓存允许的最大文档大小

示例

MCacheMaxObjectSize 6400000

注意

MCacheMaxObjectSize 的值必须大于MCacheMinObjectSize 的值。

top

MCacheMaxStreamingBuffer 指令

说明:定义最大流式化响应可缓冲长度
语法:MCacheMaxStreamingBuffer 字节长度
默认值:MCacheMaxStreamingBuffer 100000 或 MCacheMaxObjectSize两者中的最小值
上下文:服务器配置
状态:Experimental
模块:mod_mem_cache

MCacheMaxStreamingBuffer 指令定义最大流式化响应可缓存长度,以决定是否这个流式化响应太长而不能被缓存。流式化响应是指整个响应包没法完整地得到,并且包长末知的响应。流式化响应的来源包括代理的响应内容和CGI脚本的输出。缺省情况下,除非响应头包含包长信息,流式化响应不会被缓存。这样做是为了避免使用大量内存缓存部分最终会因为太长而不能缓存的响应。而MCacheMaxStreamingBuffer 指令允许缓存不含包长的流式化响应,直到达到MCacheMaxStreamingBuffer 指定的值。如果达到了最大流式化响应可缓冲长度,已经被缓存的内容将会被释放,缓存也不再继续。

注意

MCacheMaxStreamingBuffer 使用一个非零值不会对响应传送到客户产生延迟。当mod_mem_cache 模块将流式化的内容复制到缓冲区的时候,会同时将数据块传送到下一个输入点以传送给客户端。

# 指定最大流式化响应可缓冲长度为 64KB:
MCacheMaxStreamingBuffer 65536

top

MCacheMinObjectSize 指令

说明:缓存允许的最小文档大小(以Byte为单位)
语法:MCacheMinObjectSize bytes
默认值:MCacheMinObjectSize 0
上下文:服务器配置
状态:Experimental
模块:mod_mem_cache

MCacheMinObjectSize 指令设定缓存允许的最小文档大小

示例

MCacheMinObjectSize 10000

top

MCacheRemovalAlgorithm 指令

说明:定义在需要时哪个文档被移出缓存的算法
语法:MCacheRemovalAlgorithm LRU|GDSF
默认值:MCacheRemovalAlgorithm GDSF
上下文:服务器配置
状态:Experimental
模块:mod_mem_cache

MCacheRemovalAlgorithm 指令定义在需要时哪个文档被移出缓存。可以有两种选择:

LRU (最近最少使用)
LRU 指定最长时间没有用到的对象将在必要的时候移出缓存。
GDSF (GreadyDual-Size)
GDSF 基于缓存命中率和文档大小计算优先级。在必要时,优先级最低的文档被移出缓存。

示例

MCacheRemovalAlgorithm GDSF
MCacheRemovalAlgorithm LRU

top

MCacheSize 指令

说明:缓存所用最大内存量,以KB为单位。
语法:MCacheSize KBytes
默认值:MCacheSize 100
上下文:服务器配置
状态:Experimental
模块:mod_mem_cache

MCacheSize 指令设定缓存所用最大内存量,以KBytes(1024-byte)为单位。如果一个新的比缓存剩余内存量大对象的要插入缓存,原来缓存内的对象会被移走,直到这个新的对象能被插入缓存区。具体哪个对象被移走,是通过MCacheRemovalAlgorithm 指令指定的算法来确定的。

示例

MCacheSize 700000

注意

MCacheSize 的值必须比MCacheMaxObjectSize 指令设定的值大。

 


项目维护者: kajaa [本文译者: Daniel * ]

项目说明 | 项目进度 | 项目讨论区 | Apache手册中文版