ホームページ  >  記事  >  バックエンド開発  >  PHP を使用して Zookeeper サービスにアクセスする

PHP を使用して Zookeeper サービスにアクセスする

巴扎黑
巴扎黑オリジナル
2016-11-11 10:09:351587ブラウズ

zookeeper の依存関係ライブラリをダウンロードします:
http://apache.fayea.com/zookeeper/zookeeper-3.4.6/
解凍します
tar -zxfzookeeper-3.4.6.tar.gz
cdzookeeper-3.4.6/src/ c
インストール
./configure --prefix=/usr/local/zookeeper/zookeeper-3.4.6/
make および make install

PHPzookeeper 拡張ライブラリをダウンロードします:
http://pecl.php.net/package/ Zookeeper

解凍
tar -zxvf Zookeeper-3.4.6.tar.gz
インストール
/usr/local/php5.4/bin/phpize
./configure --with-php-config=/usr/local/php5 4/bin/php-config --with-libzookeeper-dir=/usr/local/zookeeper/zookeeper-3.4.6/
make & make install

設定 php を編集
vim /usr/local/conf/php5. 4 /php.ini
/usr/local/php5.4/bin/php -m

l /usr/local/php5.4/lib/php/extensions/no-debug-non-zts-20100525
fpm を再起動します
kill -USR2 `cat /usr/local/php5.4/var/run/php-fpm.pid`

Zookeeper サービスのステータスへのアクセスをテストする:
vim test_zookeeper.php


classzookeeper_instance extends Zookeeper {
function connect_cb($type, $event, $string) {
“ if ($event == Zookeeper::CONNECTED_STATE) {
“ “ "scheme"=>"world",
"id"=>"anyone" $zk->connect("127.0.0.1:2181" , array($zk, 'connect_cb'),200000);
echo "接続OK"
$zkm=$zk->get("/hbase/master") );
var_dump($zk->getState()) ;
var_dump($zk->getAcl("/hbase/master")); >getRecvTimeout());

echo "nr";

実行:
php test_zookeeper.php
結果:
インスタンスOK
接続OK
string(65) " 20165@namenode1.dd .comnamenode1.dd.com,60000,1429518731888"
int(3)
array(2) {
[0]=>
int(165782755280355365)
[1]=>
string(18) " ? c6. "
}
array(2) {
[0]=>
array(11) {
["czxid"]=>
float(227633267014)
["mzxid"]=>
float(227633267014)
["ctime"] =>
float(1429518733469)
["mtime"]=>
float(1429518733469)
["version"]=>
int(0)
["cversion"]=>
int(0) )
["aversion" ]=>
int(0)
["ephemeralOwner"]=>
float(2.3780011668065E+17)
["dataLength"]=>
int(65)
["numChildren"]= >
int(0)
["pzxid"]=>
float(227633267014)
}
[1]=>
array(1) {
[0]=>
array(3) {
["perms" ] =>
int(31)

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。