Press Ctrl+C to stop. Start success.
BusinessWorker Start
worker[Gateway:26646] exit with status 64000
worker[Gateway:26670] exit with status 64000
worker[Gateway:26699] exit with status 64000
worker[Gateway:26727] exit with status 64000
worker[Gateway:26731] exit with status 64000
worker[Gateway:26765] exit with status 64000
worker[Gateway:26804] exit with status 64000
worker[Gateway:26829] exit with status 64000
worker[Gateway:26843] exit with status 64000
worker[Gateway:26846] exit with status 64000
worker[Gateway:26847] exit with status 64000
worker[Gateway:26850] exit with status 64000
worker[Gateway:26851] exit with status 64000
worker[Gateway:26854] exit with status 64000
worker[Gateway:26867] exit with status 64000
worker[Gateway:26870] exit with status 64000
worker[Gateway:26871] exit with status 64000
worker[Gateway:26874] exit with status 64000
^CWorkerman[artisan] stopping ...
worker[Gateway:26875] exit with status 64000
Workerman[artisan] has been stopped
代碼
private function start()
{
$this->startGateWay();
$this->startBusinessWorker();
$this->startRegister();
Worker::runAll();
}
private function startBusinessWorker()
{
$worker = new BusinessWorker();
$worker->name = 'BusinessWorker'; #設(shè)置BusinessWorker進(jìn)程的名稱
$worker->count = 1; #設(shè)置BusinessWorker進(jìn)程的數(shù)量
$worker->registerAddress = '127.0.0.1:12360'; #注冊服務(wù)地址
$worker->eventHandler = \App\GatewayWorker\Events::class; #設(shè)置使用哪個(gè)類來處理業(yè)務(wù),業(yè)務(wù)類至少要實(shí)現(xiàn)onMessage靜態(tài)方法,onConnect和onClose靜態(tài)方法可以不用實(shí)現(xiàn)
}
private function startGateWay()
{
$gateway = new Gateway("websocket://0.0.0.0:22222");
$gateway->name = 'Gateway'; #設(shè)置Gateway進(jìn)程的名稱,方便status命令中查看統(tǒng)計(jì)
$gateway->count = 1; #進(jìn)程的數(shù)量
$gateway->lanIp = '127.0.0.1'; #內(nèi)網(wǎng)ip,多服務(wù)器分布式部署的時(shí)候需要填寫真實(shí)的內(nèi)網(wǎng)ip
$gateway->startPort = 2300; #監(jiān)聽本機(jī)端口的起始端口
$gateway->pingInterval = 30;
$gateway->pingNotResponseLimit = 0; #服務(wù)端主動(dòng)發(fā)送心跳
$gateway->pingData = '{"mode":"heart"}';
$gateway->registerAddress = '127.0.0.1:12360'; #注冊服務(wù)地址
}
private function startRegister()
{
new Register('text://0.0.0.0:12360');
}