我一直在使用Memcache和PHP很长一段时间并且一切都很棒,但现在我每10到15分钟就会收到此错误。
MemcachePool::get(): Server localhost (tcp 11211, udp 0) failed with: Network timeout
我认为这可能是由于防火墙或类似的东西,所以我关闭了我的防火墙,但还没有停止发送此消息。
每次出错后我都要重启我的memcache。
它的Memcache不是在Windows 7机器上使用PHP 5.4 MSVC9 TS版本的D。我无法理解此网络超时问题该怎么办。可以做些什么来解决这个问题。
目前,目前我只有一台带有Windows 7的本地机器,因此无法建立Memcache集群或安装Memcache(D)。
不确定它是否是memcache守护程序或客户端问题。
答案 0 :(得分:0)
我遇到了同样的问题,Windows 10上的php和Ubuntu上安装的Memcached(在Linux的Windows子系统中运行)
我的情况是,问题是localhost
解析为[::1]
:
>ping localhost
Pinging SURFACE-PRO-FRA [::1] with 32 bytes of data:
默认情况下,Memcached仅侦听127.0.0.1。
要解决此问题,可以使Memcached也可以在ipv6上侦听:
$ sudo vi /etc/memcached.conf
替换
-l 127.0.0.1
具有:
-l 127.0.0.1,::1
然后
sudo service memcached restart
或者,也可以让您的应用连接到 127.0.0.1 而不是 localhost 。