<?php require 'autoloader.php'; $data = array('test1'); $conn = new \Kafka\Socket('192.168.1.115', '9092'); $conn->connect(); $encoder = new \Kafka\Protocol\Encoder($conn); $encoder->metadataRequest($data); $decoder = new \Kafka\Protocol\Decoder($conn); $result = $decoder->metadataResponse(); var_dump($result);
/** * get broker broker connect * * @param string $host * @access private * @return void */ public function getStream($host, $lockKey = null) { if (!$lockKey) { $lockKey = uniqid($host); } list($hostname, $port) = explode(':', $host); // find unlock stream if (isset(self::$stream[$host])) { foreach (self::$stream[$host] as $key => $info) { if ($info['locked']) { continue; } else { self::$stream[$host][$key]['locked'] = true; return array('key' => $key, 'stream' => $info['stream']); } } } // no idle stream $stream = new \Kafka\Socket($hostname, $port); $stream->connect(); self::$stream[$host][$lockKey] = array('locked' => true, 'stream' => $stream); return array('key' => $lockKey, 'stream' => $stream); }