项目中需要添加很多机器人,执行游戏任务,想起几十个或上百个client,哪位大侠帮我看看 这样的写法会不会出现问题。
for($i=0;$i<100;$i++){
$client = new AsyncTcpConnection("xxx.xxx.xxx:8282");
$client->onConnect = function($client) {};
$client->onMessage = function($client, $message) {};
$client->connect();
}
写法没有问题,不过要注意发起连接的一方即client方所在的机器能够支持的最大tcp连接数是有限的,所以执行完任务后能释放tcp连接的尽量释放。
好的谢谢你的回答,我这一百个链接需要长时间与服务器链接,很长时间不能去断开即释放,应该是没有问题的吧。因为暂时平台需要这么多的机器人在线并且有不同的操作。
只要客户端所在的机器内存能够支撑你预期的TCP连接数就好,当然这个连接数除了内存影响外,还受限于机器TCP有关内核参数的配置,一般单机支撑上万个也不是问题,现在仅100个TCP长连接不用担心。
还有我这个写法AsyncTcpConnection的名字都一样 都是$client,这样确定不会有什么问题吧 。
没问题
@614:再次感谢啊 这个平台还挺好,这么快就能有反应
插个眼