Nginx를 Kafka와 통합하는 방법

王林
풀어 주다: 2023-05-21 12:07:06
앞으로
2176명이 탐색했습니다.

Background

nginx-kafka-module은 nginx용 플러그인입니다. kafka를 nginx에 통합하여 웹 프로젝트에서 프런트 엔드 페이지 매장 지점 데이터를 쉽게 수집할 수 있습니다. 사용자의 방문 중 일부는 http 요청을 통해 메시지 미들웨어 kafka로 직접 전송됩니다. 백엔드는 프로그램을 통해 kafka의 메시지를 소비하여 실시간 계산을 수행할 수 있습니다. 예를 들어, Sparkstream은 Kafka의 데이터를 실시간으로 사용하여 사용자 pv, uv, 일부 사용자 행동 및 페이지의 퍼널 모델 전환율을 분석하여 시스템을 더 잘 최적화하거나 방문에 대한 실시간 동적 분석을 수행하는 데 사용됩니다. 사용자.

특정 통합 단계

1. git

yum install -y git
로그인 후 복사

2를 설치합니다. /usr/local/src 디렉터리로 전환한 다음, kafka의 C 클라이언트 소스 코드를 로컬에서 복제합니다.

cd /usr/local/src
git clone https://github.com/edenhill/librdkafka
로그인 후 복사

3.

cd librdkafka
yum install -y gcc gcc-c++ pcre-devel zlib-devel
./configure
make && make install
로그인 후 복사

4. nginx 통합 kafka 플러그인을 설치하고 /usr/local/src로 이동하여 nginx 통합 kafka

cd /usr/local/src
git clone https://github.com/brg-liuwei/ngx_kafka_module
로그인 후 복사

5의 소스 코드를 복제합니다(nginx 컴파일 및 그런 다음 플러그인을 동시에 컴파일합니다.)

cd /usr/local/src/nginx-1.12.2
./configure --add-module=/usr/local/src/ngx_kafka_module/
make && make install
로그인 후 복사

6. nginx 구성 파일을 수정합니다. 아래와 같이 위치와 kafaka 주제를

#添加配置(2处)
kafka;
kafka_broker_list f1:9092 f2:9092 f3:9092;

location = /kafka/access {
kafka_topic access888;
}
로그인 후 복사

설정합니다.

Nginx를 Kafka와 통합하는 방법

Nginx를 Kafka와 통합하는 방법

7. 및 kafka 클러스터(주제 생성)

zkserver.sh start
kafka-server-start.sh -daemon config/server.properties
로그인 후 복사

8. nginx를 시작하고 kafka.so.1 파일을 찾을 수 없다는 오류를 보고합니다.

공유 라이브러리를 로드하는 동안 오류가 발생했습니다. librdkafka.so.1: 공유 객체를 열 수 없습니다. 파일: 해당 파일 또는 디렉터리가 없습니다

9. so 라이브러리를 로드합니다

#开机加载/usr/local/lib下面的库
echo "/usr/local/lib" >> /etc/ld.so.conf
#手动加载
ldconfig
로그인 후 복사

10. 테스트하고 nginx에 데이터를 쓴 다음 kafka 소비자가 데이터를 사용할 수 있는지 관찰합니다

curl http://localhost/kafka/access -d "message send to kafka topic"
curl http://localhost/kafka/access -d "小伟666"测试
로그인 후 복사

정보 전송을 위한 페이지 묻혀 요청 인터페이스:

Nginx를 Kafka와 통합하는 방법

배경 kafka 소비 정보는 그림과 같습니다:

Nginx를 Kafka와 통합하는 방법

위 내용은 Nginx를 Kafka와 통합하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!