Example #1
0
 public function testOpenMultipleChannel()
 {
     $client = new Client();
     $client->connect();
     $this->assertInstanceOf("Bunny\\Channel", $ch1 = $client->channel());
     $this->assertInstanceOf("Bunny\\Channel", $ch2 = $client->channel());
     $this->assertNotEquals($ch1->getChannelId(), $ch2->getChannelId());
     $this->assertInstanceOf("Bunny\\Channel", $ch3 = $client->channel());
     $this->assertNotEquals($ch1->getChannelId(), $ch3->getChannelId());
     $this->assertNotEquals($ch2->getChannelId(), $ch3->getChannelId());
     $client->disconnect();
 }
Example #2
0
 public function testClose()
 {
     $c = new Client();
     $c->connect();
     $this->assertInstanceOf("Bunny\\Protocol\\MethodChannelCloseOkFrame", $c->channel()->close());
     $c->disconnect();
 }
Example #3
0
 public function testClose()
 {
     $c = new Client();
     $c->connect();
     $promise = $c->channel()->close();
     $this->assertInstanceOf("React\\Promise\\PromiseInterface", $promise);
     $promise->then(function () use($c) {
         $c->stop();
     });
     $c->run();
 }
Example #4
0
<?php

namespace Bunny;

require_once __DIR__ . "/../vendor/autoload.php";
$c = new Client();
$c->connect();
$ch = $c->channel();
$ch->queueDeclare("bench_queue");
$ch->exchangeDeclare("bench_exchange");
$ch->queueBind("bench_queue", "bench_exchange");
$body = <<<EOT
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyza
EOT;
$time = microtime(true);
$max = isset($argv[1]) ? (int) $argv[1] : 1;
for ($i = 0; $i < $max; $i++) {
    $ch->publish($body, [], "bench_exchange");
}
echo microtime(true) - $time, "\n";
$ch->publish("quit", [], "bench_exchange");
$c->disconnect();