MyQEE\Server\Server::startWithAdvancedClusters PHP Метод

startWithAdvancedClusters() приватный Метод

高级集群模式启动
private startWithAdvancedClusters ( ) : boolean
Результат boolean
    private function startWithAdvancedClusters()
    {
        $longOpts = ['worker', 'task'];
        $options = getopt('', $longOpts);
        if (isset($options['worker'])) {
            # 仅仅用作 worker 服务器
            $this->startWorkerServer();
        } elseif (isset($options['task'])) {
            # 仅仅用作 Task 服务器
            $this->startTaskServer();
        } else {
            # 二者都有, 开启一个子进程单独启动task相关服务
            $process = new \Swoole\Process(function ($worker) {
                /**
                 * @var \Swoole\Process $worker
                 */
                $this->startTaskServer();
            });
            $process->start();
            # 任务进程会通过独立服务启动, 所以这里强制设置成0
            $config = self::$config['swoole'];
            $config['task_worker_num'] = 0;
            $config['task_max_request'] = 0;
            $this->startWorkerServer($config);
        }
        return true;
    }