“消耗”TCP端口。
pconnect 代表持久的联系。这意味着客户端(在您的情况下是脚本)将始终与您的服务器建立连接,这可能不是一个资源问题 - 更多的是缺少可用的连接。
pconnect
你可能应该想要这个标准 connect 除非你知道你需要使用持久连接。
connect
一个缺点是如果一个或所有持久连接的memcached守护进程消失,PHP不会出现明显的错误或警告。这是一个非常大的缺点。
在应用程序我正在开发我使用pconnect,因为它使用连接池,从硬件的角度来看 - 一个服务器保持一个连接到memcache。我不确切知道它是如何工作的但我认为memcached足够智能来跟踪memcached客户机的IP。
我玩memcached已经很长时间了,发现使用memcache :: getStatus显示使用pconnect时连接数没有增加。
您可以使用显示memcached统计信息的调试页面,并尝试调整pconnect或连接,看看发生了什么。
Memcached使用TCP连接(握手是3个额外的数据包,关闭通常是4个数据包)并且不需要 的 任何认证 强> 。因此,使用持久连接的唯一好处是您不需要发送额外的7个数据包而不必担心剩余的连接 时间的等待 端口几秒钟。
可悲的是,牺牲这些资源的缺点远远大于小的上升空间。所以我建议不要在memcached中使用持久连接。
据我所知,同样如此 规则 在连接到MySQL时,管理持久性和常规连接也适用于memcached。结果是,你可能不应该在任何一种情况下都使用持久连接。