/** * 开始处理产品数据 */ public function runAction() { //$pid = 16607872; //$pid = 16665795; //$this->moveProduct($pid); //exit; $di = \Phalcon\DI::getDefault(); $di->setShared('beanstalkd', function () { $queue = new SocketBeanstalk(array('host' => '192.168.8.189', 'port' => 11300)); return $queue; }); while (1) { \Xz\Lib\Core\RunTime::start(); $di->get("beanstalkd")->watch("forbuyers_product_move"); $job = $di->get("beanstalkd")->reserve(1); if (empty($job)) { sleep(1); continue; } $result = ""; $result = !empty($job['body']) ? $job['body'] : array(); if (empty($result)) { sleep(1); continue; } $di->get("beanstalkd")->delete($job['id']); $pidArr = json_decode($result, true); foreach ($pidArr as $pid) { $this->moveProduct($pid); } } }
public function __construct($appPath, $mode = 'Web') { RunTime::start(); $cfgvar = get_cfg_var('phaplus.env'); $env = !empty($cfgvar) ? $cfgvar : 'dev'; define('APP_MODE', $this->modeMap[$mode]); define('APP_ROOT', rtrim($appPath, '/') . '/'); define('APP_ENV', $env); $this->init(); }
public function callService($data) { echo "service is doing:.\n"; var_dump($data); echo ".\n"; \Xz\Lib\Core\RunTime::start(); // 判断数据是否正确 if (empty($data['data']['service']) || empty($data['data']['method']) || !isset($data['data']['args'])) { // 发送数据给客户端,请求包错误 return array('fd' => $data['fd'], 'data' => array('code' => 600, 'msg' => 'bad request', 'data' => 0)); } $di = new \Phalcon\DI(); require APP_ROOT . 'apps/config/loaderyar.php'; $backend = new \Xz\Lib\Core\BackendServer(); $ret = array(); $ret['data'] = $backend->callService($data['data']); $ret['fd'] = $data['fd']; \Phalcon\DI::reset(); echo "service is complete:.\n"; var_dump($ret); echo ".\n"; return $ret; }