当前位置: 首页>>代码示例>>PHP>>正文


PHP GearmanClient类代码示例

本文整理汇总了PHP中GearmanClient的典型用法代码示例。如果您正苦于以下问题:PHP GearmanClient类的具体用法?PHP GearmanClient怎么用?PHP GearmanClient使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了GearmanClient类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: CreateNewClient

function CreateNewClient()
{
    $_client = new GearmanClient();
    $_client->addServer("192.168.201.12");
    $_client->setCompleteCallback("jobEcho");
    return $_client;
}
开发者ID:seiran1944,项目名称:slate,代码行数:7,代码来源:client.php

示例2: createJobServer

 /**
  * 
  * @return \Api_Component_JobServer
  */
 static function createJobServer()
 {
     $gearmanHost = new GearmanHost('localhost');
     $gearmanClient = new GearmanClient();
     $gearmanClient->addServer();
     return new Api_Component_JobServer($gearmanHost, $gearmanClient);
 }
开发者ID:otis22,项目名称:reserve-copy-system,代码行数:11,代码来源:Factory.php

示例3: actionStart

 /**
  * Smpp search all
  * @param $startPage Start page number
  */
 public function actionStart($startPage = 1)
 {
     $gmanClient = new \GearmanClient();
     $gmanClient->addServer($this->module->gman_server);
     $httpClient = new \GuzzleHttp\Client(['base_uri' => 'http://www.smpp.go.kr']);
     $res = $httpClient->request('POST', '/cop/registcorp/selectRegistCorpListVw.do', ['form_params' => ['pageIndex' => $startPage, 'pageUnit' => '100']]);
     $body = $res->getBody();
     $html = (string) $body;
     $p = '#<a.*btnMove last.*fn_getList\\((?<lastpage>\\d+)\\);#';
     if (!preg_match($p, $html, $m)) {
         return;
     }
     $lastPage = $m['lastpage'];
     echo "총 페이지수 : {$lastPage}", PHP_EOL;
     for ($i = $startPage; $i <= $lastPage; $i++) {
         if ($i > $startPage) {
             $res = $httpClient->request('POST', '/cop/registcorp/selectRegistCorpListVw.do', ['form_params' => ['pageIndex' => $i, 'pageUnit' => '100']]);
             $body = $res->getBody();
             $html = (string) $body;
         }
         $this->parseList($html, function ($data) use($gmanClient, $i) {
             echo "page({$i}) >> " . join(',', $data), PHP_EOL;
             $gmanClient->doNormal('smpp_corp_get', Json::encode(['bizno' => $data['bizno']]));
         });
         sleep(1);
     }
 }
开发者ID:didwjdgks,项目名称:yii2-smpp,代码行数:31,代码来源:ListController.php

示例4: client

 public function client()
 {
     $config = $this->config->item('base_config');
     $host = $config['gearman']['host'];
     $port = $config['gearman']['port'];
     $client = new GearmanClient();
     $client->addServer($host, $port);
     $data = array('method' => 'get', 'url' => 'http://master.500mi.com/main/gearman/test', 'params' => array('wd' => '哈哈'));
     $job_handle = $client->doBackground("send_request", json_encode($data));
     if ($client->returnCode() != GEARMAN_SUCCESS) {
         echo "bad return code\n";
         exit;
     }
     $done = false;
     do {
         sleep(1);
         $stat = $client->jobStatus($job_handle);
         var_dump($stat);
         if (!$stat[0]) {
             $done = true;
         }
         echo "Running: " . ($stat[1] ? "true" : "false") . ", numerator: " . $stat[2] . ", denomintor: " . $stat[3] . "\n";
     } while (!$done);
     echo "done!\n";
 }
开发者ID:sdgdsffdsfff,项目名称:hiveAdmin,代码行数:25,代码来源:gearman.php

示例5: start

 public static function start()
 {
     $gmc = new \GearmanClient();
     $gmc->addServer("127.0.0.1", 4730);
     $data = array();
     $task = $gmc->doNormal("hunt_postman", "foo");
 }
开发者ID:tempbottle,项目名称:Charme,代码行数:7,代码来源:Distribute.php

示例6: getClient

 /**
  * 获取gearmant客户端
  * @return \GearmanClient
  */
 private function getClient()
 {
     if ($this->client !== null) {
         return $this->client;
     }
     $client = new \GearmanClient();
     $conStrings = array();
     foreach ($this->servers as $ser) {
         if (is_string($ser)) {
             $conStrings[] = $ser;
         } else {
             $conStrings[] = $ser['host'] . (isset($ser['port']) ? ':' . $ser['port'] : '');
         }
     }
     $conString = false;
     if (count($conStrings) > 0) {
         $conString = implode(',', $conStrings);
     }
     if ($conString) {
         $result = $client->addServers($conString);
         if ($result) {
             $this->echoTraceLog('服务器添加成功! servers: ' . $conString);
         } else {
             $this->echoErrorLog('服务器添加失败! servers: ' . $conString);
             return false;
         }
     }
     $this->client = $client;
     return $this->client;
 }
开发者ID:fu-tao,项目名称:meelier_c,代码行数:34,代码来源:Client.php

示例7: getClient

 /**
  * 实现单例模式
  *
  * @param   array   $config
  * @return  GearmanClient
  */
 public static function getClient($config)
 {
     $worker = new GearmanClient();
     foreach ($config as $serverInfo) {
         $worker->addServer($serverInfo['host'], $serverInfo['port']);
     }
     return $worker;
 }
开发者ID:aozhongxu,项目名称:web_hqoj,代码行数:14,代码来源:GearmanPool.class.php

示例8: __construct

 public function __construct(\GearmanClient $client = null)
 {
     if (is_null($client)) {
         $client = new \GearmanClient();
         $client->addServers("localhost:4730");
     }
     $this->client = $client;
 }
开发者ID:gonzalo123,项目名称:gearmanserviceprovider,代码行数:8,代码来源:GearmanServiceProvider.php

示例9: Run

 public function Run()
 {
     /* create our object */
     $gmclient = new \GearmanClient();
     /* add the default server */
     $gmclient->addServer();
     /* run reverse client */
     $job_handle = $gmclient->doBackground("reverse", "this is a test");
 }
开发者ID:JasonOcean,项目名称:iOS_Interest_Group,代码行数:9,代码来源:gearman_ut.php

示例10: addJob

 public static function addJob($id, $function, $data)
 {
     $client = new \GearmanClient();
     $client->addServer(gearman_server, gearman_port);
     $job = new Job();
     $job->setId($id)->setExpireTime(time() + 172800)->setReference(array('CLIController', $function, $data));
     $job_handle = $client->doBackground(app_name . 'handle', serialize($job));
     Log::write(__METHOD__ . ' invoked gearman job (' . $function . ') for id ' . $id . ' ' . app_name . 'handle' . ' ' . $client->returnCode());
 }
开发者ID:badtux,项目名称:pmg,代码行数:9,代码来源:job.class.php

示例11: queueAssignment

/**
 * This function will take 3 arguments and pass it to gearman worker to store in database
*/
function queueAssignment($name, $email, $phone)
{
    $detailsArray = array('name' => $name, 'email' => $email, 'phone' => $phone);
    $detailsStr = json_encode($detailsArray);
    writeFile($detailsArray);
    // client code
    $client = new GearmanClient();
    $client->addServer();
    $store = $client->do("saveRecord", $detailsStr);
}
开发者ID:garimagupta03,项目名称:gearman_project,代码行数:13,代码来源:index.php

示例12: setup

 /**
  * do driver instance init
  */
 public function setup()
 {
     $settings = $this->getSettings();
     if (empty($settings)) {
         throw new BoxRouteInstanceException('init driver instance failed: empty settings');
     }
     $curInst = new \GearmanClient();
     $curInst->addServers($settings['gearmanHosts']);
     $this->instance = $curInst;
     $this->isAvailable = $this->instance ? true : false;
 }
开发者ID:nickfan,项目名称:appbox,代码行数:14,代码来源:GearmanClientBoxRouteInstanceDriver.php

示例13: _setupGearmanClient

 /**
  * Ustawienie gearman klienta
  */
 protected function _setupGearmanClient()
 {
     $config = new Zend_Config_Ini(APPLICATION_PATH . '/configs/application.ini', APPLICATION_ENV);
     foreach ($config->gearman->client->server as $serverAddress) {
         try {
             self::$_client->addServer($serverAddress);
         } catch (Exception $exc) {
             throw new Exception("Gearman server on {$serverAddress} is not working!");
         }
     }
 }
开发者ID:knatorski,项目名称:SMS,代码行数:14,代码来源:Client.php

示例14: getInstance

 /**
  * This method will instantiate the object, configure it and return it
  *
  * @return Zend_Cache_Manager
  */
 public static function getInstance()
 {
     $config = App_DI_Container::get('ConfigObject');
     $gearmanClient = new GearmanClient();
     if (!empty($config->gearman->servers)) {
         $gearmanClient->addServers($config->gearman->servers->toArray());
     } else {
         $gearmanClient->addServer();
     }
     return $gearmanClient;
 }
开发者ID:omusico,项目名称:logica,代码行数:16,代码来源:GearmanClient.php

示例15: enqueue

 /**
  * enqueue
  *
  * @param string $value
  * @return boolean
  */
 public function enqueue($value)
 {
     $gm = new \GearmanClient();
     $gm->addServer($this->host, $this->port);
     $gm->queue_name = $this->queue_name;
     if ($gm->ping('ping')) {
         $job_handle = $gmclient->doBackground($this->queue_name, json_encode($value), md5($value));
         return $this->gmclient->returnCode() != GEARMAN_SUCCESS ? false : true;
     } else {
         return false;
     }
 }
开发者ID:nbari,项目名称:DALMP,代码行数:18,代码来源:Gearman.php


注:本文中的GearmanClient类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。