Implemented RabbitMQ and Refactored Client & Worker (WIP)

This commit is contained in:
Netkas 2023-02-02 21:09:45 -05:00
parent d15da30813
commit 6d8d4a75a4
13 changed files with 966 additions and 170 deletions

27
tests/rabbitmq_worker.php Normal file
View file

@ -0,0 +1,27 @@
<?php
require 'ncc';
use Tamer\Objects\Job;
import('net.nosial.tamerlib', 'latest');
$worker = new \Tamer\Protocols\RabbitMq\Worker('guest', 'guest');
$worker->addServer('127.0.0.1', 5672);
$worker->addFunction('sleep', function($job) {
/** @var Job $job */
var_dump(get_class($job));
echo "Task {$job->getId()} started with data: {$job->getData()} \n";
sleep($job->getData());
echo "Task {$job->getId()} completed with data: {$job->getData()} \n";
return $job->getData();
});
while(true)
{
echo "Waiting for job... \n";
$worker->work();
}