120
GitHub - reactphp/zmq: ZeroMQ bindings for ReactPHP.
source link: https://github.com/reactphp/zmq
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
React/ZMQ
ZeroMQ bindings for React.
Install
The recommended way to install react/zmq is through composer.
composer require react/zmq
Example
And don't forget to autoload:
<?php require 'vendor/autoload.php';
Here is an example of a push socket:
<?php $loop = React\EventLoop\Factory::create(); $context = new React\ZMQ\Context($loop); $push = $context->getSocket(ZMQ::SOCKET_PUSH); $push->connect('tcp://127.0.0.1:5555'); $i = 0; $loop->addPeriodicTimer(1, function () use (&$i, $push) { $i++; echo "sending $i\n"; $push->send($i); }); $loop->run();
And the pull socket that goes with it:
<?php $loop = React\EventLoop\Factory::create(); $context = new React\ZMQ\Context($loop); $pull = $context->getSocket(ZMQ::SOCKET_PULL); $pull->bind('tcp://127.0.0.1:5555'); $pull->on('error', function ($e) { var_dump($e->getMessage()); }); $pull->on('message', function ($msg) { echo "Received: $msg\n"; }); $loop->run();
- Integration tests
- Buffer limiting
- Do not push messages if no listener
Tests
To run the test suite, you need PHPUnit.
$ phpunit
License
MIT, see LICENSE.
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK