react/stomp
最新稳定版本:v0.2.0
Composer 安装命令:
composer require react/stomp
包简介
STOMP bindings for React.
关键字:
README 文档
README
STOMP bindings for React.
STOMP is a messaging protocol. It is supported by most message queue brokers, such as RabbitMQ, Apollo and many others.
A message queue is used for asynchronous inter-process communication. This can be useful for workers, general long-running tasks, or communication between long-running daemons.
Install
The recommended way to install react/stomp is through composer.
{
"require": {
"react/stomp": "0.1.*"
}
}
Example
You can interact with a STOMP server by using the React\Stomp\Client.
<?php $loop = React\EventLoop\Factory::create(); $factory = new React\Stomp\Factory($loop); $client = $factory->createClient(array('vhost' => '/', 'login' => 'guest', 'passcode' => 'guest')); $client ->connect() ->then(function ($client) use ($loop) { $client->subscribe('/topic/foo', function ($frame) { echo "Message received: {$frame->body}\n"; }); $loop->addPeriodicTimer(1, function () use ($client) { $client->send('/topic/foo', 'le message'); }); }); $loop->run();
Options
host: Host to connect to, defaults to127.0.0.1.port: Port to connect to, defaults to61613(rabbitmq's stomp plugin).vhost: Virtual host, defaults to/.login: Login user name, defaults toguest.passcode: Login passcode, defaults toguest.
Acknowledgement
When subscribing with the subscribe method, messages are considered
acknowledged as soon as they are sent by the server (ack header is set to
'auto').
You can subscribe with a manual acknowledgement by using subscribeWithAck
(see SUBSCRIBE
in the STOMP spec for available ack mode values).
You will get a React\Stomp\AckResolver as second argument of the callback to
acknowledge or not the message :
$client->subscribeWithAck('/topic/foo', 'client', function ($frame, $ackResolver) { if ($problem) { $ackResolver->nack(); } else { $ackResolver->ack(); } });
Todo
- Support nul bytes in frame body
- Heart-beating
- Consuming ACKs
- Transactions
- Streaming frame bodies (using stream API)
Tests
To run the test suite, you need PHPUnit.
$ phpunit
License
MIT, see LICENSE.
Resources
统计信息
- 总下载量: 92.09k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 115
- 点击次数: 1
- 依赖项目数: 1
- 推荐数: 1
其他信息
- 授权协议: MIT
- 更新时间: 2012-08-27