getConf('MYSQL'); $config = new Config(); $config->setDatabase($mysql_conf['database']); $config->setUser($mysql_conf['user']); $config->setPassword($mysql_conf['password']); $config->setHost($mysql_conf['host']); $config->setTimeout($mysql_conf['timeout']); // 超时时间 //连接池配置 $config->setGetObjectTimeout($mysql_conf['getObjectTimeout']); //设置获取连接池对象超时时间 $config->setIntervalCheckTime($mysql_conf['intervalCheckTime']); //设置检测连接存活执行回收和创建的周期 $config->setMaxIdleTime($mysql_conf['maxIdleTime']); //连接池对象最大闲置时间(秒) $config->setMinObjectNum($mysql_conf['minObjectNum']); //设置最小连接池存在连接对象数量 $config->setMaxObjectNum($mysql_conf['maxObjectNum']); //设置最大连接池存在连接对象数量 $config->setAutoPing($mysql_conf['autoPing']); //设置自动ping客户端链接的间隔 DbManager::getInstance()->addConnection(new Connection($config)); } public static function mainServerCreate(EventRegister $register) { ###### 注册一个定时任务 ###### // 配置定时任务 $crontabConfig = new \EasySwoole\Crontab\Config(); // 1.设置执行定时任务的 socket 服务的 socket 文件存放的位置,默认值为 当前文件所在目录 // 这里设置为框架的 Temp 目录 $crontabConfig->setTempDir(EASYSWOOLE_TEMP_DIR); // 2.设置执行定时任务的 socket 服务的名称,默认值为 'EasySwoole' $crontabConfig->setServerName('EasySwoole'); // 3.设置用来执行定时任务的 worker 进程数,默认值为 3 $crontabConfig->setWorkerNum(3); // 4.设置定时任务执行出现异常的异常捕获回调 $crontabConfig->setOnException(function (\Throwable $throwable) { // 定时任务执行发生异常时触发(如果未在定时任务类的 onException 中进行捕获异常则会触发此异常回调) }); // 创建定时任务实例 $crontab = new Crontab($crontabConfig); // 注册定时任务 $crontab->register(new BalanceCrontab()); $crontab->register(new ElasticSearchGoodsCrontab()); $crontab->attachToServer(ServerManager::getInstance()->getSwooleServer()); } }