zookeeper 와 PHP zookeeper, kafka 확장 설치
20486 단어 종합 하 다
직접 복사
1.1. zookeeper 직접 설치 (컴 파일 필요 없 음)
다운로드 주소:http://mirror.bit.edu.cn/apache/zookeeper/
wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz tar -zxvf zookeeper-3.4.9.tar.gz mv zookeeper-3.4.9/ /usr/local/zookeeper/
전역 변수 설정
vim ~/.bash_profile
마지막 줄 가입
export PATH=/usr/local/zookeeper/bin:$PATH
발효 시키다
source ~/.bash_profile
파일 위치 설정
/usr/local/zookeeper/conf/zoo.cfg
메모: 기본 설정 파일 이 없습니다. 사례 파일 이 있 습 니 다 zoosample.cfg 사용 할 때 는 스스로 하 나 를 복사 해 야 한다.
cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg
1.2. 소스 코드 컴 파일 설치 zookeeper
다운로드 주소:http://mirror.bit.edu.cn/apache/zookeeper/
wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz tar -zxf zookeeper-3.4.9.tar.gz cd zookeeper-3.4.9/src/c ./configure -prefix=/usr/local/zookeeper/zookeeper-3.4.9/ make && make install
전역 변수 설정
vim ~/.bash_profile
마지막 줄 가입
export PATH=/usr/local/zookeeper/zookeeper-3.4.9/bin:$PATH
발효 시키다
source ~/.bash_profile
파일 위치 설정
/usr/local/zookeeper/zookeeper-3.4.9/conf/zoo.cfg
메모: 기본 설정 파일 이 없습니다. 사례 파일 이 있 습 니 다 zoosample.cfg 사용 할 때 는 스스로 하 나 를 복사 해 야 한다.
cp /usr/local/zookeeper/zookeeper-3.4.9/conf/zoo_sample.cfg /usr/local/zookeeper/zookeeper-3.4.9/conf/zoo.cfg
2. php zookeeper 확장 설치
wget http://pecl.php.net/get/zookeeper-0.2.2.tgz
tar -zxvf zookeeper-0.2.2.tgz cd zookeeper-0.2.2 phpize ./configure -with-php-config=/www/lanmps/php5.6.23/bin/php-config -with-libzookeeper-dir=/usr/local/zookeeper/zookeeper-3.4.9/ make && make install
메모: phpize 는 PHP 버 전 디 렉 터 리 의 phpize 입 니 다.
최신 카 프 카 주의 7 (3 과 4PASS) 사용 하 세 요
3. librdkafka 설치
wget https://github.com/edenhill/librdkafka/archive/master.zip
mv master.zip librdkafka-master.zip
unzip librdkafka-master.zip cd librdkafka-master ./configure make make install
4. php - kafka 확장 설치
wget https://github.com/EVODelavega/phpkafka/archive/master.zip
mv master.zip phpkafka-master.zip
unzip phpkafka-master.zip cd phpkafka-master phpize ./configure --enable-kafka --with-php-config=/www/lanmps/php5.6.23/bin/php-config make # make install #
메모: phpize 는 PHP 버 전 디 렉 터 리 의 phpize 입 니 다.
5. 확장 설정
PHP 프로필 편집
vim php.ini
말미 증가
extension=zookeeper.so
extension=kafka.so
메모: extension 찾기dir 설정 이 되 어 있 는 지 여부 입 니 다. 설정 이 없 으 면 스스로 설정 하 십시오. 모든 확장 컴 파일 설치 에 성공 하면 출력 합 니 다 (아래 와 유사)
Installing shared extensions: / /php5.6.23/lib/php/extensions/no-debug-non-zts-20131226/
주 소 를 복사 하면 다음 형식 으로 바 꾸 어 pp. ini 에 추가 합 니 다.
extension_dir=/ /php5.6.23/lib/php/extensions/no-debug-non-zts-20131226/
6. 설치 완료 여부 확인
... 에 있다 phpinfo(); 안 을 살펴보다 kafka, zookeeper 확장 이 있 는 지, 설치 에 성공 했다 는 표시 가 있 으 면
7. PHP - kafka 확장 (3 과 4 설치 완료 후 사용 불가 시)
https://github.com/nmred/kafka-php 이 확장 기능 을 사용 하면 최신 kafka 를 지원 합 니 다. 여기에 composer 를 사용 하여 설 치 된 것 입 니 다. 다음은 예제 (example 폴 더 아래) 입 니 다.
producer.php
require 'vendor/autoload.php';
$part = mt_rand(0, 1); $produce = \Kafka\Produce::getInstance('localhost:2181', 3000); // get available partitions $partitions = $produce->getAvailablePartitions('topic_name'); var_dump($partitions); // send message $produce->setRequireAck(-1); $produce->setMessages('topic_name', 0, array(date('Y-m-d H:i:s'));
consumer.php
require 'vendor/autoload.php';
$consumer = \Kafka\Consumer::getInstance('localhost:2181'); $group = 'topic_name'; $consumer->setGroup($group); $consumer->setFromOffset(true); $consumer->setTopic('topic_name', 0); $consumer->setMaxBytes(102400); $result = $consumer->fetch(); print_r($result); foreach ($result as $topicName => $partition) { foreach ($partition as $partId => $messageSet) { var_dump($partition->getHighOffset()); foreach ($messageSet as $message) { var_dump((string)$message); } var_dump($partition->getMessageOffset()); }
}
인터넷 + 시대, 항상 공 부 를 유지 하고 천 봉 PHP 와 손 잡 아야 합 니 다.
,Dream It Possible。
더 많은 PHP 관련 기술 은 천 봉 PHP 를 검색 하여 진실 한 자신 이 되 고 양심 으로 교육 하 세 요.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
nginx 설정 addheader 'Access - Control - Allow - Origin' '*' 에 도 영역 간 문제 가 존재 합 니 다.1. 문제 설명: 전단 도 메 인 A 는 POST 가 백 엔 드 도 메 인 이름 B 의 인 터 페 이 스 를 요청 할 때 크로스 도 메 인 문제 가 존재 하지 않 습 니 다. 해결: 요청 이 성공 하면 HTTP CO...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.