@walkor大人,
$client = stream_socket_client('tcp://127.0.0.1:5678', $errno, $errmsg, 1, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT);
這段代碼中的STREAM_CLIENT_PERSISTENT標(biāo)志代表什么含義, 是持久連接的意思嗎?
求舉例,求解答。
@walkor , 我測試了下,應(yīng)該是當(dāng)前php-fpm請求利用
$client = stream_socket_client('tcp://127.0.0.1:5678', $errno, $errmsg, 1, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT);
來連接服務(wù)端, 如果這次請求中有多次利用STREAM_CLIENT_PERSISTENT來連接同一個IP跟PORT就會復(fù)用這個鏈接,
但是php-fpm請求結(jié)束后,再次運行 還是會有建立鏈接的過程的。
web_server服務(wù)端:
$web->onConnect = function() {
echo "connect\n";
};
測試腳本:
$client = stream_socket_client('tcp://127.0.0.1:55151', $errno, $errmsg, 1, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT);
$client1 = stream_socket_client('tcp://127.0.0.1:55151', $errno, $errmsg, 1, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT);
$client2 = stream_socket_client('tcp://127.0.0.1:55151', $errno, $errmsg, 1, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT);
var_dump($client, $client1, $client2); //會打印一次connect。
腳本結(jié)束后再次運行這個腳本,還是會打印connect的。
腳本測試后,STREAM_CLIENT_PERSISTENT 這個參數(shù),是針對當(dāng)前php-fpm請求的鏈接復(fù)用。
@walkor ,我說的對嗎?