Esempio n. 1
0
 /**
  * 添加的自定义端口服务
  */
 protected function initSockets()
 {
     foreach (self::$config['sockets'] as $key => $setting) {
         if (in_array(strtolower($key), ['main', 'task', 'api', 'manager', 'registerserver'])) {
             self::warn("自定义端口服务关键字不允许是 Main, Task, API, Manager, RegisterServer, 已忽略配置, 请修改配置 sockets.{$key}.");
             continue;
         }
         foreach ((array) $setting['link'] as $st) {
             $opt = $this->parseSockUri($st);
             $listen = self::$server->listen($opt->host, $opt->port, $opt->type);
             if (!isset(self::$workers[$key])) {
                 self::$workers[$key] = $key;
             }
             # 设置参数
             $listen->set($this->getSockConf($key));
             # 设置回调
             $this->setListenCallback($key, $listen, $opt);
             $this->info("add listen: {$st}");
         }
     }
 }