MemcachePool :: get():服务器localhost(tcp 11211,udp 0)失败:网络超时

Abd*_*rai 5 php windows memcached tcp

我一直在使用Memcache和PHP很长一段时间,一切都很棒,但现在我每隔10到15分钟就会遇到这个错误.

MemcachePool::get(): Server localhost (tcp 11211, udp 0) failed with: Network timeout
Run Code Online (Sandbox Code Playgroud)

我认为这可能是由于防火墙或类似的东西,所以我关闭了我的防火墙,但没有停止给出这个消息.

每次错误后我都要重启我的memcache.

它是Memcache而不是带有PHP 5.4 MSVC9 TS版本的Windows 7机器上的D.我无法理解此网络超时问题该怎么办.可以做些什么来解决这个问题.

目前,目前我只有一台带有Windows 7的本地机器,因此无法建立Memcache集群或安装Memcache(D).

不确定它是否是memcache守护程序或客户端问题.

the*_*uts 1

我遇到了同样的问题,Windows 10 上安装了 php,Ubuntu 上安装了 Memcached(在 Linux 的 Windows 子系统中运行)

就我而言,问题是localhost解决[::1]

>ping localhost
Pinging SURFACE-PRO-FRA [::1] with 32 bytes of data:
Run Code Online (Sandbox Code Playgroud)

Memcached 默认情况下仅侦听 127.0.0.1。

为了解决这个问题,你可以让 Memcached 也监听 ipv6:

$ sudo vi /etc/memcached.conf
Run Code Online (Sandbox Code Playgroud)

代替

-l 127.0.0.1
Run Code Online (Sandbox Code Playgroud)

和:

-l 127.0.0.1,::1
Run Code Online (Sandbox Code Playgroud)

进而

sudo service memcached restart
Run Code Online (Sandbox Code Playgroud)

或者,让您的应用程序连接到127.0.0.1而不是localhost