GatewayWorker服務(wù)器 是Liunx服務(wù)器,已經(jīng)按照Linux優(yōu)化和安裝event擴(kuò)展的操作過了。
但是用另一臺(tái)Liunx服務(wù)器來進(jìn)行壓力測試,最大連接數(shù)一直是1024,難道這臺(tái)服務(wù)器也需要優(yōu)化和裝擴(kuò)展嗎?
壓力測試到底該如何進(jìn)行,請大神指教
use Workerman\Worker;
use Workerman\Lib\Timer;
use Workerman\Connection\AsyncTcpConnection;
require_once __DIR__ . '/vendor/workerman/workerman/Autoloader.php';
$worker = new Worker();
$worker->onWorkerStart = 'connect';
function connect(){
static $count = 0;
// 2000個(gè)鏈接
if ($count++ >= 2000) return;
// 建立異步鏈接
$con = new AsyncTcpConnection("ws://demo:8282/ws");
$con->onConnect = function($con) {
// 遞歸調(diào)用connect
connect();
};
// 遠(yuǎn)程websocket服務(wù)器發(fā)來消息時(shí)
$con->onMessage = function($con, $msg) {
//echo "recv $msg\n";
};
// 當(dāng)連接遠(yuǎn)程websocket服務(wù)器的連接斷開時(shí)
$con->onClose = function($con) {
echo "con close\n";
};
// 連接上發(fā)生錯(cuò)誤時(shí),一般是連接遠(yuǎn)程websocket服務(wù)器失敗錯(cuò)誤
$con->onError = function($con, $code, $msg){
echo "error: ".$code."--".$msg."\n";
};
// 當(dāng)前鏈接每10秒發(fā)個(gè)心跳包
Timer::add(10, function()use($con){
$ping = array(
'type' => 'ping',
'data' => array()
);
$con->send(json_encode($ping));
});
$con->connect();
echo $count, " connections complete\n";
}
Worker::runAll();
這是壓力測試的,跑到1020就不動(dòng)了,也沒有提示