public function testConnection()
 {
     $client = new ClientProxy($this->subject);
     $job = $client->put(0, 0, 10, 'hello!');
     $job = $client->put(0, 0, 10, 'hello!');
     $this->assertGreaterThan(0, $job);
 }
Beispiel #2
0
 public function connect()
 {
     $tubeName = $this->tubeName;
     $process = $this->process;
     $logger = $this->logger;
     $options = $this->config['message_server'];
     $options['socket_timeout'] = $this->config['reserve_timeout'] * 2;
     $queue = new BeanstalkClient($options);
     $queue = new BeanstalkClientProxy($queue, $logger);
     $this->queue = $queue;
     $connected = $queue->connect();
     if (!$connected) {
         $logger->critical("tube({$tubeName}, #{$process->pid}): worker start failed(connect queue failed), {$queue->getLatestError()}.");
         $process->exit(1);
         return;
     }
     $watched = $queue->watch($tubeName);
     if (!$watched) {
         $logger->critical("tube({$tubeName}, #{$process->pid}): worker start failed(watch tube failed), {$queue->getLatestError()}.");
         $process->exit(1);
         return;
     }
     $used = $queue->useTube($tubeName);
     if (!$used) {
         $logger->critical("tube({$tubeName}, #{$process->pid}): worker start failed(use tube failed), {$queue->getLatestError()}.");
         $process->exit(1);
         return;
     }
     $queue->ignore('default');
     $logger->info("tube({$tubeName}, #{$process->pid}): watching.");
     return true;
 }