12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- <?php
- declare(strict_types=0);
- define('APP_ID', 'rdispatcher');
- define('MOBILE_SERVER',true);
- define('SUPPORT_PTHREAD',true);
- define('BASE_ROOT_PATH',str_replace('/rdispatcher','',dirname(__FILE__)));
- define('BASE_PATH',BASE_ROOT_PATH . '/rdispatcher');
- require_once(BASE_ROOT_PATH . '/global.php');
- require_once(BASE_ROOT_PATH . '/fooder.php');
- require_once(BASE_HELPER_PATH . '/event_looper.php');
- require_once(BASE_HELPER_PATH . '/queue/rdispatcher.php');
- require_once(BASE_HELPER_PATH . '/algorithm.php');
- require_once(BASE_HELPER_PATH . '/message/msgstates.php');
- require_once(BASE_HELPER_PATH . '/message/msgutil.php');
- require_once(BASE_HELPER_PATH . '/message/subscriber.php');
- require_once(BASE_HELPER_PATH . '/refill/RefillFactory.php');
- require_once(BASE_PATH . '/processor.php');
- require_once(BASE_PATH . '/proxy.php');
- if (empty($_SERVER['argv'][1])) exit('parameter error');
- $count = intval($_SERVER['argv'][1]);
- function all_channels() {
- return ['refill'];
- }
- function handle_error($level, $message, $file, $line)
- {
- if($level == E_NOTICE) return;
- $trace = "handle_error: level={$level},msg={$message} file={$file},line={$line}\n";
- $backtrace = debug_backtrace();
- foreach ($backtrace as $item) {
- $trace .= "{$item['file']}\t{$item['line']}\t{$item['function']}\n";
- }
- Log::record($trace,Log::ERR);
- }
- $gMessageStates = null;
- function work_proc()
- {
- Base::run_util();
- set_error_handler('handle_error');
- global $gMessageStates;
- $gMessageStates = new MsgStates();
- StatesHelper::init();
- $listener = new message\subscriber($gMessageStates);
- $listener->start();
- $looper = new processor();
- $looper->run();
- }
- //refill\RefillFactory::instance();
- //work_proc();
- event\util::fork_workerex('work_proc',$count);
|