Maison >développement back-end >Problème PHP >Comment installer l'extension php zookeeper
Méthode d'installation : 1. Installez et démarrez le serveur zookeeper ; 2. Téléchargez l'extension zookeeper et extrayez-la dans le répertoire ext du répertoire d'installation de PHP. 3. Dans le répertoire d'installation de PHP, exécutez la commande pour générer le fichier configure et makefile ; 4. Utilisez la commande make. Compilez et installez simplement.
L'environnement d'exploitation de ce tutoriel : système centos6.4, version PHP5.5.10, ordinateur DELL G3
ZooKeeper est un service de coordination d'applications distribuées et open source, une source ouverte de Chubby Implementation de Google est un élément important composant de Hadoop et Hbase. Il s'agit d'un logiciel qui fournit des services cohérents pour les applications distribuées. Les fonctions fournies incluent : la maintenance de la configuration, les services de noms de domaine, la synchronisation distribuée, les services de groupe, etc.
L'objectif de ZooKeeper est d'encapsuler des services clés complexes et sujets aux erreurs et de fournir aux utilisateurs des interfaces simples et faciles à utiliser ainsi qu'un système doté de performances efficaces et de fonctions stables.
Pour utiliser zookeeper en php, vous devez d'abord installer l'extension php zookeeper. Pour installer l'extension php zookeeper, vous devez d'abord installer zookeeper
Comment installer l'extension php zookeeper
Environnement :
centos. : 6.4
zookeeper : 3.4.5
php : 5.5.10
nginx : 1.5
php extension zookeeper : 0.2.2
Si nginx n'est pas installé, assurez-vous d'abord de configurer nginx ; puis continuez
Si php n'est pas installé, installez d'abord php (configurez d'abord le support php de nginx, puis installez l'extension zookeeper)
Installez zookeeper
Téléchargez
wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.5/zookeeper-3.4.5.tar.gz
Décompressez (n'importe quel répertoire dans lequel vous le placez dans , rappelez-vous)
tar zxfv zookeeper-3.4.5.tar.gz
Démarrez le serveur zookeeper
cd zookeeper-3.4.5/conf cp zoo_sample.cfg zoo.cfg cd ../bin ./zkServer.sh start
Il est préférable de confirmer si vous attendez un succès, ./zkServer.sh status
J'ai un seul serveur ici, donc le résultat est :
[root@localhost bin]# ./zkServer.sh status JMX enabled by default Using config: /root/zookeeper-3.4.5/bin/../conf/zoo.cfg Mode: standalone
Compilez la bibliothèque zookeeper et donnez Pour php
cd ../src/c ./configure --prefix=/usr/local/zookeeperlib make && make install
Installez l'extension zookeeper pour php
Télécharger
wget http://pecl.php.net/get/zookeeper-0.2.2.tgz
Décompressez(Ne vous inquiétez pas pour le package.xml décompressé)
tar zxvf zookeeper-0.2.2.tgz
Mettez-le dans /root/ Dans php-5.5.10/ext
mv zookeeper-0.2.2 /root/php-5.5.10/ext/ cd /root/php-5.5.10/ext/
Changez le nom du répertoire
mv zookeeper-0.2.2 zookeeper
Retournez au répertoire php-5.5.10
cd .. ./buildconf --force ./configure -h|grep zookeeper
Vérifiez si configure prend déjà en charge zookeeper
--enable-zookeeper Enable zookeeper support --disable-zookeeper-session Disable zookeeper session handler support --with-libzookeeper-dir=DIR Set the path to libzookeeper install prefix.
S'il s'affiche comme ci-dessus, cela signifie qu'il est pris en charge, continuez vers le bas
cd ext/zookeeper
Générer la configuration
/usr/local/php5.5.10/bin/phpize
Générer le makefile
./configure --with-php-config=/usr/local/php5.5.10/bin/php-config --with-libzookeeper-dir=/usr/local/zookeeperlib 注意上面的路径: --with-php-config是php安装的路径 --with-libzookeeper-dir是第一步中install zookeeper库的路径
Compiler et installer
make && make install
Le résultat est la prochaine configuration de ce le résultat utilisera
Installing shared extensions: /usr/local/php5.5.10/lib/php/extensions/no-debug-non-zts-20121212/
Ajouter un chemin ext et un nom de fichier
vim /usr/local/php5.5.10/etc/php.ini extension_dir="/usr/local/php5.5.10/lib/php/extensions/no-debug-non-zts-20121212/" extension=zookeeper.so
Recompiler php
Entrez le dossier de code source de Php, n'entrez pas le mauvais. Mon dossier de code source est /root/php-5.5.10 et le répertoire d'installation est /usr/local/php5.5.10
cd /root/php-5.5.10 rm -rf autom4te.cache/ configure ./buildconf --force ./configure -h|grep zookeeper
Vérifiez si configure prend déjà en charge zookeeper
S'il le prend déjà en charge, passez à l'étape suivante
./configure --prefix=/usr/local/php5.5.10 --with-config-file-path=/usr/local/php5.5.10/etc --with-bz2 --with-curl --enable-ftp --enable-sockets --disable-ipv6 --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/local --enable-gd-native-ttf --with-iconv-dir=/usr/local --enable-mbstring --enable-calendar --with-gettext --with-libxml-dir=/usr/local --with-zlib --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-dom --enable-xml --enable-fpm --with-libdir=lib64 --enable-zookeeper --with-libzookeeper-dir=/usr/local/zookeeperlib --enable-sockets
make && make install
Voilà, le support a été installé, testons si c'est normal
Dans zookeeper-0.2.2.tgz (qui est l'extension zookeeper de Php), il y a le fichier examples/Zookeeper_Example.php, qui peut être utilisé pour tester
cp /root/php-5.5.10/ext/zookeeper/examples/Zookeeper_Example.php /usr/local/nginx/html/ /usr/local/php5.5.10/bin/php /usr/local/nginx/html/Zookeeper_Example.php
Pour voir si les résultats suivants peuvent être imprimés
string(0) "" array(1) { [0]=> string(9) "zookeeper" } NULL string(3) "abc" array(2) { [0]=> string(7) "test123" [1]=> string(9) "zookeeper" } NULL NULL array(2) { [0]=> string(3) "001" [1]=> string(3) "002" }
Redémarrez php-fpm
killall php-fpm /usr/local/php5.5.10/sbin/php-fpm
Vous pouvez maintenant accéder à php qui prend en charge l'extension zookeeper via le navigateur
Si vous avez d'autres questions, veuillez vérifier :
1, iptables
2, Selinux
Apprentissage recommandé : "Tutoriel vidéo PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!