pconnect 命令/方法/函数

Description

Connects to a Redis instance or reuse a connection already established with pconnect/popen.


pconnect/popen用于连接一个Redis的实例或者复用一个已经存在的实例。


The connection will not be closed on close or end of request until the php process ends. So be patient on to many open FD's (specially on redis server side) when using persistent connections on many servers connecting to one redis server.


这个连接将不会被主动关闭,比如使用close(),或者PHP执行结束这个连接都不会被主动关闭。当有大量的connect请求在redis服务器端时,使用持久化的连接对象。


Also more than one persistent connection can be made identified by either host + port + timeout or host + persistent_id or unix socket + timeout.


一个持久化的连接实例,可以使用HOST+PORT+TIMEOUT或者HOST+persistent_id或者SOCKET+TIMEOUT的方式创建。


This feature is not available in threaded versions. pconnect and popen then working like their non persistent equivalents.


pconnect函数和popen函数在线程版本中不能被使用。


Parameters

host: string. can be a host, or the path to a unix domain socket

port: int, optional

timeout: float, value in seconds (optional, default is 0 meaning unlimited)

persistent_id: string. identity for the requested persistent connection


Return Value

BOOL: TRUE on success, FALSE on error.


Example

$redis->pconnect('127.0.0.1', 6379);

$redis->pconnect('127.0.0.1'); // port 6379 by default - same connection like before.

$redis->pconnect('127.0.0.1', 6379, 2.5); // 2.5 sec timeout and would be another connection than the two before.

$redis->pconnect('127.0.0.1', 6379, 2.5, 'x'); // x is sent as persistent_id and would be another connection the the three before.

$redis->pconnect('/tmp/redis.sock'); // unix domain socket - would be another connection than the four before.