月关 / phpnats2
此包的最新版本(v1.0.0)没有可用的许可证信息。
v1.0.0
2019-03-12 10:35 UTC
This package is auto-updated.
Last update: 2024-09-12 23:00:37 UTC
README
Travi
覆盖率
简介
一个用于NATS消息系统的PHP客户端。
要求
- php 5.6+
- gnatsd
使用方法
安装
让我们先在我们的项目目录中下载composer
curl -O https://getcomposer.org.cn/composer.phar
chmod +x composer.phar
现在让我们让composer知道我们项目的依赖项,在这种情况下,PHPNats。我们这样做是通过创建一个composer.json文件,并将其放置在我们的项目的根目录中,紧挨着composer.phar
{
"require": {
"repejota/nats": "dev-master"
}
}
让我们让Composer施展魔法
php composer.phar install
Composer将下载composer.json中定义的所有依赖项,并为它们准备所有必要的自动加载文件。
基本用法
$client = new \Nats\Connection(); $client->connect(); // Publish Subscribe // Simple Subscriber. $client->subscribe( 'foo', function ($message) { printf("Data: %s\r\n", $message->getBody()); } ); // Simple Publisher. $client->publish('foo', 'Marty McFly'); // Wait for 1 message. $client->wait(1); // Request Response // Responding to requests. $sid = $client->subscribe( 'sayhello', function ($message) { $message->reply('Reply: Hello, '.$message->getBody().' !!!'); } ); // Request. $client->request( 'sayhello', 'Marty McFly', function ($message) { echo $message->getBody(); } );
编码连接
$encoder = new \Nats\Encoders\JSONEncoder(); $options = new \Nats\ConnectionOptions(); $client = new \Nats\EncodedConnection($options, $encoder); $client->connect(); // Publish Subscribe // Simple Subscriber. $client->subscribe( 'foo', function ($payload) { printf("Data: %s\r\n", $payload->getBody()[1]); } ); // Simple Publisher. $client->publish( 'foo', [ 'Marty', 'McFly', ] ); // Wait for 1 message. $client->wait(1); // Request Response // Responding to requests. $sid = $client->subscribe( 'sayhello', function ($message) { $message->reply('Reply: Hello, '.$message->getBody()[1].' !!!'); } ); // Request. $client->request( 'sayhello', [ 'Marty', 'McFly', ], function ($message) { echo $message->getBody(); } );
开发者信息
版本
测试
测试在tests
文件夹中。要运行它们,您需要PHPUnit
并执行make test-tdd
。
我们还在spec
文件夹下有一个BDD测试套件。要运行套件,您需要PHPSpec
并执行make test-bdd
。
您也可以使用make test
执行所有套件(TDD + BDD)。
代码质量
我们使用PHP Code Sniffer来确保我们的代码遵循高质量标准。
要执行代码分析,请执行make lint
。
在lint我们的代码时,目前有三个步骤
- 首先,我们使用php本身进行lint
php -l
- 然后,我们使用PSR2标准进行lint
- 最后,我们使用一个自定义的
ruleset.xml
进行lint,该文件检查注释块和不同的性能提示。
创建者
Raül Pérez
许可证
MIT,请参阅LICENSE