前些日子,有人给Swoole
提出了一个Issue,内容如下:
number of maximum connection we can use with swoole?
hello
i want to know how many is the maximum connection per second that swoole can support
we want use this framework for real-time game server and it is very important to know max number support connection/second for swoole framework.
thank you
峰哥回复如下:
It depends on the value of your system ulimit -n and your settings. The maximum limit is 1 million.
ulimit -n 100000
$server = new SwooleServer;
$server->set(["max_connection" => 100000]);
说的是取决于我们设置的ulimit -n
的值以及我们给server
配置的值。我们来测试一下:
服务器代码:
<?php // co_long_tcp_server.php
$serv = new SwooleServer("0.0.0.0", 9501);
$serv->on('receive', function (SwooleServer $serv, $fd, $from_id, $data)
{
$serv->send($fd, $data . $data);
});
$serv->start();
我们启动服务器:
php co_long_tcp_server.php
然后,我们来看看我们的ulimit -n
的值:
~/codeDir/phpCode/test/swoole # ulimit -a
-f: file size (blocks) unlimited
-t: cpu time (seconds) unlimited
-d: data seg size (kb) unlimited
-s: stack size (kb) 8192
-c: core file size (blocks) 0
-m: resident set size (kb) unlimited
-l: locked m