我正在使用Unbuntu 10.04构build的新服务器,运行php-fastcgi,nginx和memcached。
phpinfo()脚本加载和工作很好,与testingmemcached脚本相同。 对于使用会话的任何脚本,页面加载时间火箭穿过屋顶。
--- memcached.ini --- extension=memcached.so memcache.hash_strategy = "consistent" memcache.max_failover_attempts = 100 memcache.allow_failover = 1 session.save_handler = memcached session.save_path = "tcp://127.0.0.1:11211?persistent=1&weight=1&timeout=1&retry_interval=15"
让我知道如果你需要看到任何其他configuration。
问题出在memcache.so和memcached.so之间的session.save_path语法中:
extension=memcache.so session.save_handler = memcache session.save_path = "tcp://127.0.0.1:11211"
与
extension=memcached.so session.save_handler = memcached session.save_path = "127.0.0.1:11211"
请注意memcache中的协议,memcached中没有协议。
另外,确保你真的有.so你正在尝试加载。 他们是两个独立的软件包,通过apt-get或Yum或任何你使用的口味。
由于加载错误的模块或使用不正确的语法导致的任何破坏都会在php中尝试使用会话机制并导致超时延迟30秒,最终超时。
希望能节省一些时间。 😉
PHP的memcached不是PHP的memcache! 他们是分开的实现。
什么是一个简单的'session.save_path =“127.0.0.1:11211”'给你? 要么
session.save_handler = memcache session.save_path = "tcp://127.0.0.1:11211?persistent=1&weight=1&timeout=1&retry_interval=15"
注意save_handler中缺less的'd'。
将PHP扩展从memcached.so更改为memcache.so。 这解决了所有的滞后问题。 不知道这是一个Ubuntu的错误或与我的设置错误,但它现在工作很好。