annon / nsqclient
0.0.2
2023-12-22 08:56 UTC
Requires
- php: >=7.1
- ext-bcmath: *
- ext-curl: *
- ext-json: *
- psr/log: ~3.0
- react/event-loop: ~1.5
Suggests
- ext-pcntl: graceful shutdown
This package is auto-updated.
Last update: 2024-09-15 05:29:00 UTC
README
又是为 NSQ 开发的PHP客户端。
安装(通过composer)
composer require moolex/nsqclient dev-master
使用
发布
$topic = 'my_topic'; $endpoint = new \NSQClient\Access\Endpoint('http://127.0.0.1:4161'); $message = new \NSQClient\Message\Message('hello world'); $result = \NSQClient\Queue::publish($endpoint, $topic, $message);
发布(延迟)
$topic = 'my_topic'; $endpoint = new \NSQClient\Access\Endpoint('http://127.0.0.1:4161'); $message = (new \NSQClient\Message\Message('hello world'))->deferred(5); $result = \NSQClient\Queue::publish($endpoint, $topic, $message);
发布(批量)
$topic = 'my_topic'; $endpoint = new \NSQClient\Access\Endpoint('http://127.0.0.1:4161'); $message = \NSQClient\Message\Bag::generate(['msg data 1', 'msg data 2']); $result = \NSQClient\Queue::publish($endpoint, $topic, $message);
订阅
$topic = 'my_topic'; $channel = 'my_channel'; $endpoint = new \NSQClient\Access\Endpoint('http://127.0.0.1:4161'); \NSQClient\Queue::subscribe($endpoint, $topic, $channel, function (\NSQClient\Contract\Message $message) { echo 'GOT ', $message->id(), "\n"; // make done $message->done(); // make retry immediately // $message->retry(); // make retry delayed in 10 seconds // $message->delay(10); });