<?php

define('DEBUG', 'on');
define("WEBPATH", str_replace("\\", "/", __DIR__));
require __DIR__ . '/../libs/lib_config.php';
$client = new Swoole\Client\WebSocket('127.0.0.1', 9443, '/');
if (!$client->connect()) {
    echo "connect to server failed.\n";
    exit;
}
while (true) {
    $client->send("hello world");
    $message = $client->recv();
    if ($message === false) {
        break;
    }
    echo "Received from server: {$message}\n";
    sleep(1);
}
echo "Closed by server.\n";
示例#2
0
<?php

define('WEBPATH', __DIR__);
require __DIR__ . '/framework/libs/lib_config.php';
require __DIR__ . '/TestServer.php';
$cli = new Swoole\Client\WebSocket('127.0.0.1', 9501, '/', false);
if (!$cli->connect()) {
    echo "connect to server failed.\n";
}
$s = microtime(true);
// start profiling
//xhprof_enable();
for ($i = 0; $i < TestServer::PKG_NUM; $i++) {
    $len = TestServer::random();
    $sid = TestServer::random();
    $array['index'] = $i;
    $array['sid'] = $sid;
    $array['len'] = $len;
    $array['data'] = str_repeat('A', $len);
    $_send = serialize($array) . "\r\n\r\n";
    if ($i % 1000 == 0) {
        echo "#{$i} send package. sid={$sid}, length=" . strlen($_send) . ", md5=" . md5($_send) . "\n";
        //usleep(100);
    }
    $ret = $cli->send($_send, 'text', false);
    if (!$ret) {
        break;
    }
}
echo PHP_VERSION . " cost " . (microtime(true) - $s) * 1000 . "ms\n";
//$xhprof_data = xhprof_disable();