目前有一個未記錄的變數可用於 session 處理(您可以在 php_info() 中看到它)
memcache.session_redundancy
預設值似乎是「2」,它應該會影響 Memcache 為故障轉移目的儲存特定 session 物件的副本數量(因此,如果備援設定為 2,它將在 2 個不同的分片上儲存 session)。
這會因為額外的寫入操作而增加一些額外負擔,但總體而言,為了故障轉移的目的,這似乎是值得的。
這些函式的行為會受到 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
布林值是否在發生錯誤時透明地切換到其他伺服器。
memcache.max_failover_attempts
整數定義在設定和取得資料時嘗試多少個伺服器。僅與 memcache.allow_failover 搭配使用。
memcache.chunk_size
整數資料將以這個大小的區塊傳輸,設定較低的值需要更多網路寫入。如果發現不明原因的效能降低,請嘗試將此值增加到 32768。
memcache.default_port
字串連線到 memcached 伺服器時,如果沒有指定其他連接埠,將使用的預設 TCP 連接埠號。
memcache.hash_strategy
字串控制將鍵值映射到伺服器時使用的策略。將此值設定為 consistent
以啟用一致性雜湊,允許在不重新映射鍵值的情況下新增或移除伺服器池中的伺服器。將此值設定為 standard
將使用舊的策略。
memcache.hash_function
字串控制將鍵值映射到伺服器時套用的雜湊函數,crc32
使用標準 CRC32 雜湊,而 fnv
使用 FNV-1a。
memcache.protocol
字串
memcache.redundancy
整數
memcache.session_redundancy
整數
memcache.compress_threshold
整數
memcache.lock_timeout
整數
session.save_handler
字串將此值設定為 memcache
以使用 memcache 作為 session 處理程式。
session.save_path
字串定義以逗號分隔的伺服器網址列表,用於 session 儲存,例如 "tcp://host1:11211, tcp://host2:11211"
。
每個網址都可能包含套用於該伺服器的參數,這些參數與 Memcache::addServer() 方法的參數相同。例如 "tcp://host1:11211?persistent=1&weight=1&timeout=1&retry_interval=15"
目前有一個未記錄的變數可用於 session 處理(您可以在 php_info() 中看到它)
memcache.session_redundancy
預設值似乎是「2」,它應該會影響 Memcache 為故障轉移目的儲存特定 session 物件的副本數量(因此,如果備援設定為 2,它將在 2 個不同的分片上儲存 session)。
這會因為額外的寫入操作而增加一些額外負擔,但總體而言,為了故障轉移的目的,這似乎是值得的。