swoole_client->set

设置客户端参数,必须在connect前执行。swoole-1.7.17为客户端提供了类似swoole_server的自动协议处理功能。通过设置一个参数即可完成TCP的自动分包。

结束符检测

$client->set(array(
    'open_length_check' => true,
    'package_eof' => "\r\n\r\n",
    'package_max_length' => 1024 * 1024 * 2,
))

长度检测

$client->set(array(
    'open_length_check'     => 1,
    'package_length_type'   => 'N',
    'package_length_offset' => 0,       //第N个字节是包长度的值
    'package_body_offset'   => 4,       //第几个字节开始计算长度
    'package_max_length'    => 2000000,  //协议最大长度
));

Socket缓存区尺寸

$client->set(array(
    'socket_buffer_size'     => 1024*1024*2, //2M缓存区
));

关闭Nagle合并算法

$client->set(array(
    'open_tcp_nodelay'     =>  true,
));

SSL/TLS证书

$client->set(array(
    'ssl_cert_file'     =>  $your_ssl_cert_file_path,
    'ssl_key_file'     =>  $your_ssl_key_file_path,
));

swoole-1.7.21或更高版本可用

使用说明