现在有一个目前未记录的变量可用(您可以在 php_info() 中看到它)用于会话处理
memcache.session_redundancy
默认值似乎为“2”,它应该影响 Memcache 为故障转移目的而存储的特定会话对象的副本数量(因此,冗余度为 2,它将在 2 个不同的分片上存储会话)。
这将增加额外的写入开销,但总的来说对于故障转移目的来说似乎是值得的。
这些函数的行为受php.ini中的设置影响。
名称 | 默认值 | 可更改 | 变更日志 |
---|---|---|---|
memcache.allow_failover | "1" | INI_ALL |
自 memcache 2.0.2 起可用。 |
memcache.max_failover_attempts | "20" | INI_ALL |
自 memcache 2.1.0 起可用。 |
memcache.chunk_size | "8192" | INI_ALL |
自 memcache 2.0.2 起可用。 |
memcache.default_port | "11211" | INI_ALL |
自 memcache 2.0.2 起可用。 |
memcache.hash_strategy | "standard" | INI_ALL |
自 memcache 2.2.0 起可用。 |
memcache.hash_function | "crc32" | INI_ALL |
自 memcache 2.2.0 起可用。 |
memcache.protocol | ascii | INI_ALL |
自 memcache 3.0.0 起支持 |
memcache.redundancy | 1 | INI_ALL |
自 memcache 3.0.0 起支持 |
memcache.session_redundancy | 2 | INI_ALL |
自 memcache 3.0.0 起支持 |
memcache.compress_threshold | 20000 | INI_ALL |
自 memcache 3.0.3 起支持 |
memcache.lock_timeout | 15 | INI_ALL |
自 memcache 3.0.4 起支持 |
名称 | 默认值 | 可更改 | 变更日志 |
---|---|---|---|
session.save_handler | "files" | INI_ALL |
自 memcache 2.1.2 起支持 |
session.save_path | "" | INI_ALL |
自 memcache 2.1.2 起支持 |
以下是配置指令的简短说明。
memcache.allow_failover
bool是否在发生错误时透明地故障转移到其他服务器。
memcache.max_failover_attempts
int定义设置和获取数据时尝试的服务器数量。仅与 memcache.allow_failover 结合使用。
memcache.chunk_size
int数据将以此大小的块进行传输,设置较低的值需要更多网络写入。如果注意到其他无法解释的减速,请尝试将此值增加到 32768。
memcache.default_port
string如果未指定其他端口,则连接到 memcached 服务器时使用的默认 TCP 端口号。
memcache.hash_strategy
string控制将键映射到服务器时使用的策略。将此值设置为consistent
以启用一致哈希,这允许向池中添加或从中删除服务器,而不会导致键重新映射。将此值设置为standard
将导致使用旧策略。
memcache.hash_function
string控制将键映射到服务器时应用的哈希函数,crc32
使用标准 CRC32 哈希,而fnv
使用 FNV-1a。
memcache.protocol
string
memcache.redundancy
int
memcache.session_redundancy
int
memcache.compress_threshold
int
memcache.lock_timeout
int
session.save_handler
string通过将此值设置为memcache
来使用 memcache 作为会话处理程序。
session.save_path
string定义用于会话存储的服务器 url 的逗号分隔列表,例如"tcp://host1:11211, tcp://host2:11211"
。
每个 url 都可能包含应用于该服务器的参数,它们与Memcache::addServer()方法的参数相同。例如"tcp://host1:11211?persistent=1&weight=1&timeout=1&retry_interval=15"
现在有一个目前未记录的变量可用(您可以在 php_info() 中看到它)用于会话处理
memcache.session_redundancy
默认值似乎为“2”,它应该影响 Memcache 为故障转移目的而存储的特定会话对象的副本数量(因此,冗余度为 2,它将在 2 个不同的分片上存储会话)。
这将增加额外的写入开销,但总的来说对于故障转移目的来说似乎是值得的。