dev-master
9999999-devQueue manager. Based on AMQ protocol.
The Requires
- php >=5.6.0
- php-amqplib/php-amqplib 2.6.3
by Baidin Sergei
Queue manager. Based on AMQ protocol.
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π±Π°Π·ΠΎΠ²ΡΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠΎΠΌ ΠΎΡΠ΅ΡΠ΅Π΄Π΅ΠΉ RabbitMQ. br/, (*1)
ΠΠ΅ΡΡΠΈΡ | ΠΠ°ΡΠ° | ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ |
---|---|---|
dev-master | 2017-11-13 | ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° |
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Composer:br/ Π‘ΠΎΠ·Π°Π΄ΠΉΡΠ΅ ΠΈΠ»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ°ΠΉΠ» Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠ΅ΠΉ, (*2)
{ "require": { "panace9i/rabbitmq": "dev-master" } }
ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, (*3)
composer install
Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅, (*4)
require "vendor/autoload.php"; use Panace9i\Queue\RabbitMQ\Producer\Adapter\Sync; Panace9i\Queue\RabbitMQ\Config\Config::init() ->setHost('localhost') ->setPort(5672) ->setUser('guest') ->setPassword('guest'); $entity = new Sync(); $result = $entity->execute(<request_data_as_string>, <queue_name>); ...
Π‘ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π±ΡΠΈΠΊΠΈ, (*5)
<?php require "vendor/autoload.php"; use Panace9i\Queue\RabbitMQ\Producer\Factory AS ProducerFactory; Panace9i\Queue\RabbitMQ\Config\Config::init() ->setHost('localhost') ->setPort(5672) ->setUser('guest') ->setPassword('guest'); $entity = ProducerFactory::getInstance(ProducerFactory::ADAPTER_SYNC); $result = $entity->execute(<request_data_as_string>, <queue_name>); ...
Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅, (*6)
<?php require "vendor/autoload.php"; use Panace9i\Queue\RabbitMQ\Consumer\Adapter\Sync; use Panace9i\Queue\RabbitMQ\Handler\HandlerAbstract; Panace9i\Queue\RabbitMQ\Config\Config::init() ->setHost('localhost') ->setPort(5672) ->setUser('guest') ->setPassword('guest'); class SyncTest extends HandlerAbstract { public function listen($request) { $params = $request->body; ... return $this->reply(<response_data_as_string>, $request); } } $entity = new Sync(); $entity->listen(<queue_name>, [new SyncTest, 'listen']);
Π‘ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠ°Π±ΡΠΈΠΊΠΈ, (*7)
require "vendor/autoload.php"; use Panace9i\Queue\RabbitMQ\Consumer\Factory AS ConsumerFactory; use Panace9i\Queue\RabbitMQ\Handler\HandlerAbstract; Panace9i\Queue\RabbitMQ\Config\Config::init() ->setHost('localhost') ->setPort(5672) ->setUser('guest') ->setPassword('guest'); class SyncTest extends HandlerAbstract { public function listen($request) { $params = $request->body; ... return $this->reply(<response_data_as_string>, $request); } } $entity = ConsumerFactory::getInstance(ConsumerFactory::ADAPTER_SYNC); $entity->listen(<queue_name>, [new SyncTest, 'listen']);
Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅, (*8)
require "vendor/autoload.php"; use Panace9i\Queue\RabbitMQ\Producer\Adapter\Async; Panace9i\Queue\RabbitMQ\Config\Config::init() ->setHost('localhost') ->setPort(5672) ->setUser('guest') ->setPassword('guest'); $entity = new Async(); $result = $entity->execute(<request_data_as_string>, <queue_name>); ...
Π‘ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠ°Π±ΡΠΈΠΊΠΈ, (*9)
require "vendor/autoload.php"; use Panace9i\Queue\RabbitMQ\Producer\Factory AS ProducerFactory; Panace9i\Queue\RabbitMQ\Config\Config::init() ->setHost('localhost') ->setPort(5672) ->setUser('guest') ->setPassword('guest'); $entity = ProducerFactory::getInstance(ProducerFactory::ADAPTER_ASYNC); $entity->execute(<request_data_as_string>, <queue_name>); ...
Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅, (*10)
require "vendor/autoload.php"; use Panace9i\Queue\RabbitMQ\Consumer\Adapter\Async; use Panace9i\Queue\RabbitMQ\Handler\HandlerAbstract; Panace9i\Queue\RabbitMQ\Config\Config::init() ->setHost('localhost') ->setPort(5672) ->setUser('guest') ->setPassword('guest'); class AsyncTest extends HandlerAbstract { public function listen($request) { $params = $request->body; ... return $this->reply(<response_data_as_string>, $request); } } $entity = new Async(); $entity->listen(<queue_name>, [new AsyncTest, 'listen']);
Π‘ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠ°Π±ΡΠΈΠΊΠΈ, (*11)
require "vendor/autoload.php"; use Panace9i\Queue\RabbitMQ\Consumer\Factory AS ConsumerFactory; use Panace9i\Queue\RabbitMQ\Handler\HandlerAbstract; Panace9i\Queue\RabbitMQ\Config\Config::init() ->setHost('localhost') ->setPort(5672) ->setUser('guest') ->setPassword('guest'); class AsyncTest extends HandlerAbstract { public function listen($request) { $params = $request->body; ... return $this->reply(<response_data_as_string>, $request); } } $entity = ConsumerFactory::getInstance(ConsumerFactory::ADAPTER_ASYNC); $entity->listen(<queue_name>, [new AsyncTest, 'listen']);
Queue manager. Based on AMQ protocol.