示例#1
0
文件: EYiiron.php 项目: br0sk/yiiron
 public function getLog($task_id)
 {
     try {
         return $this->_worker->getLog($task_id);
     } catch (Exception $e) {
         Yii::log('Error in IronWorker: ' . $e->getMessage(), 'error', 'ext.yiiron');
         throw new CException($e->getMessage());
     }
 }
function queue_worker($payload, $emails)
{
    $name = "emailWorker.php";
    $iw = new IronWorker(array('token' => $payload->token, 'project_id' => $payload->project_id));
    $payload = array('host' => $payload->host, 'port' => $payload->port, 'username' => $payload->username, 'password' => $payload->username, 'from' => $payload->from, 'to' => $emails, 'subject' => "Welcome emails", 'body' => "Hey it's a body", 'token' => $payload->token, 'project_id' => $payload->project_id);
    $task_id = $iw->postTask($name, $payload);
    echo "task_id = {$task_id} \n";
    # Wait for task finish
    $details = $iw->waitFor($task_id);
    print_r($details);
    $log = $iw->getLog($task_id);
    echo "Task log:\n {$log}\n";
}
<?php

include "./lib/iron_worker.phar";
echo "This is master worker\n Trying to run slave...\n";
$payload = getPayload();
print_r($payload);
$name = "SlaveWorker";
$iw = new IronWorker(array('token' => $payload->token, 'project_id' => $payload->project_id));
$payload = array('token' => $payload->token, 'project_id' => $payload->project_id);
$task_id = $iw->postTask($name, $payload);
echo "task_id = {$task_id} \n";
# Wait for task finish
$details = $iw->waitFor($task_id);
print_r($details);
$log = $iw->getLog($task_id);
echo "Task log:\n {$log}\n";
<?php

require_once "phar://../iron_worker.phar";
$worker = new IronWorker();
$worker->debug_enabled = true;
$payload = array('query' => "iron.io");
$task_id = $worker->postTask("PHPWorker101", $payload);
# Wait for task finish
$details = $worker->waitFor($task_id);
print_r($details);
$log = $worker->getLog($task_id);
echo "Task log:\n {$log}\n";