文档章节

Nginx_Kafka_Module

o
 osc_0w39fdhx
发布于 2019/09/20 14:52
字数 783
阅读 14
收藏 0

行业解决方案、产品招募中!想赚钱就来传!>>>

  1.  
  2.  
    1.安装git
  3.  
    yum install -y git
  4.  
    2.切换到/usr/ local/src目录,然后将kafka的c客户端源码 clone到本地
  5.  
    cd /usr/ local/src
  6.  
    git clone https://github.com/edenhill/librdkafka
  7.  
    3.进入到librdkafka,然后进行编译
  8.  
    cd librdkafka
  9.  
    yum install -y gcc gcc-c++ pcre-devel zlib-devel
  10.  
    ./configure
  11.  
    make && make install
  12.  
     
  13.  
    4.安装nginx整合kafka的插件,进入到/usr/ local/src, clone nginx整合kafka的源码
  14.  
    cd /usr/ local/src
  15.  
    git clone https://github.com/brg-liuwei/ngx_kafka_module
  16.  
     
  17.  
    5.进入到nginx的源码包目录下 (编译nginx,然后将将插件同时编译)
  18.  
    cd /usr/ local/src/nginx-1.12.2
  19.  
    ./configure --add-module=/usr/ local/src/ngx_kafka_module/
  20.  
    make
  21.  
    make install
  22.  
     
  23.  
    6.修改nginx的配置文件,详情请查看当前目录的nginx.conf
  24.  
     
  25.  
    7.启动zk和kafka集群(创建topic)
  26.  
    /bigdata/zookeeper-3.4.9/bin/zkServer.sh start
  27.  
    /bigdata/kafka_2.11-0.10.2.1/bin/kafka-server-start.sh -daemon /bigdata/kafka_2.11-0.10.2.1/config/server.properties
  28.  
     
  29.  
    8.启动nginx,报错,找不到kafka.so.1的文件
  30.  
    error while loading shared libraries: librdkafka.so.1: cannot open shared object file: No such file or directory
  31.  
    9.加载so库
  32.  
    echo "/usr/local/lib" >> /etc/ld.so.conf
  33.  
    ldconfig
  34.  
     
  35.  
    10.测试,向nginx中写入数据,然后观察kafka的消费者能不能消费到数据
  36.  
    curl localhost/kafka/track -d "message send to kafka topic"
  37.  
    curl localhost/kafka/track -d "何洪波666"
  38.  
     
  39.  
     
  40.  
     
  41.  
    附件:nginx.conf
  42.  
     
  43.  
    #user nobody;
  44.  
    worker_processes 1;
  45.  
     
  46.  
    #error_log logs/error.log;
  47.  
    #error_log logs/error.log notice;
  48.  
    #error_log logs/error.log info;
  49.  
     
  50.  
    #pid logs/nginx.pid;
  51.  
     
  52.  
     
  53.  
    events {
  54.  
    worker_connections 1024;
  55.  
    }
  56.  
     
  57.  
     
  58.  
    http {
  59.  
    include mime.types;
  60.  
    default_type application/octet-stream;
  61.  
     
  62.  
    #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
  63.  
    # '$status $body_bytes_sent "$http_referer" '
  64.  
    # '"$http_user_agent" "$http_x_forwarded_for"';
  65.  
    #access_log logs/access.log main;
  66.  
    sendfile on;
  67.  
    #tcp_nopush on;
  68.  
    #keepalive_timeout 0;
  69.  
    keepalive_timeout 65;
  70.  
    #gzip on;
  71.  
     
  72.  
    kafka;
  73.  
    kafka_broker_list node-1.xiaoniu.com:9092 node-2.xiaoniu.com:9092 node-3.xiaoniu.com:9092;
  74.  
     
  75.  
    server {
  76.  
    listen 80;
  77.  
    server_name node-6.xiaoniu.com;
  78.  
    #charset koi8-r;
  79.  
    #access_log logs/host.access.log main;
  80.  
     
  81.  
    location = /kafka/track {
  82.  
    kafka_topic track;
  83.  
    }
  84.  
     
  85.  
    location = /kafka/user {
  86.  
    kafka_topic user;
  87.  
    }
  88.  
     
  89.  
    #error_page 404 /404.html;
  90.  
     
  91.  
    # redirect server error pages to the static page /50x.html
  92.  
    #
  93.  
    error_page 500 502 503 504 /50x.html;
  94.  
    location = /50x.html {
  95.  
    root html;
  96.  
    }
  97.  
     
  98.  
    }
  99.  
    }
  100.  
  1. 2.切换到/usr/ local/src目录,然后将kafka的c客户端源码 clone到本地
  2.  
    cd /usr/ local/src
  3.  
    git clone https://github.com/edenhill/librdkafka
  4.  
    3.进入到librdkafka,然后进行编译
  5.  
    cd librdkafka
  6.  
    yum install -y gcc gcc-c++ pcre-devel zlib-devel
  7.  
    ./configure
  8.  
    make && make install
  9.  
     
  10.  
    4.安装nginx整合kafka的插件,进入到/usr/ local/src, clone nginx整合kafka的源码
  11.  
    cd /usr/ local/src
  12.  
    git clone https://github.com/brg-liuwei/ngx_kafka_module
  13.  
     
  14.  
    5.进入到nginx的源码包目录下 (编译nginx,然后将将插件同时编译)
  15.  
    cd /usr/ local/src/nginx-1.12.2
  16.  
    ./configure --add-module=/usr/ local/src/ngx_kafka_module/
  17.  
    make
  18.  
    make install
  19.  
     
  20.  
    6.修改nginx的配置文件,详情请查看当前目录的nginx.conf
  21.  
     
  22.  
    7.启动zk和kafka集群(创建topic)
  23.  
    /bigdata/zookeeper-3.4.9/bin/zkServer.sh start
  24.  
    /bigdata/kafka_2.11-0.10.2.1/bin/kafka-server-start.sh -daemon /bigdata/kafka_2.11-0.10.2.1/config/server.properties
  25.  
     
  26.  
    8.启动nginx,报错,找不到kafka.so.1的文件
  27.  
    error while loading shared libraries: librdkafka.so.1: cannot open shared object file: No such file or directory
  28.  
    9.加载so库
  29.  
    echo "/usr/local/lib" >> /etc/ld.so.conf
  30.  
    ldconfig
  31.  
     
  32.  
    10.测试,向nginx中写入数据,然后观察kafka的消费者能不能消费到数据
  33.  
    curl localhost/kafka/track -d "message send to kafka topic"
  34.  
    curl localhost/kafka/track -d "何洪波666"
  35.  
     
  36.  
     
  37.  
     
  38.  
    附件:nginx.conf
  39.  
     
  40.  
    #user nobody;
  41.  
    worker_processes 1;
  42.  
     
  43.  
    #error_log logs/error.log;
  44.  
    #error_log logs/error.log notice;
  45.  
    #error_log logs/error.log info;
  46.  
     
  47.  
    #pid logs/nginx.pid;
  48.  
     
  49.  
     
  50.  
    events {
  51.  
    worker_connections 1024;
  52.  
    }
  53.  
     
  54.  
     
  55.  
    http {
  56.  
    include mime.types;
  57.  
    default_type application/octet-stream;
  58.  
     
  59.  
    #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
  60.  
    # '$status $body_bytes_sent "$http_referer" '
  61.  
    # '"$http_user_agent" "$http_x_forwarded_for"';
  62.  
    #access_log logs/access.log main;
  63.  
    sendfile on;
  64.  
    #tcp_nopush on;
  65.  
    #keepalive_timeout 0;
  66.  
    keepalive_timeout 65;
  67.  
    #gzip on;
  68.  
     
  69.  
    kafka;
  70.  
    kafka_broker_list node-1.xiaoniu.com:9092 node-2.xiaoniu.com:9092 node-3.xiaoniu.com:9092;
  71.  
     
  72.  
    server {
  73.  
    listen 80;
  74.  
    server_name node-6.xiaoniu.com;
  75.  
    #charset koi8-r;
  76.  
    #access_log logs/host.access.log main;
  77.  
     
  78.  
    location = /kafka/track {
  79.  
    kafka_topic track;
  80.  
    }
  81.  
     
  82.  
    location = /kafka/user {
  83.  
    kafka_topic user;
  84.  
    }
  85.  
     
  86.  
    #error_page 404 /404.html;
  87.  
     
  88.  
    # redirect server error pages to the static page /50x.html
  89.  
    #
  90.  
    error_page 500 502 503 504 /50x.html;
  91.  
    location = /50x.html {
  92.  
    root html;
  93.  
    }
  94.  
     
  95.  
    }
  96.  
     
  97.  
    }
  98.  
     
  99.  
     
  100.  
o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
记一次失败的Perl + Nginx + FastCGI 配置过程

这两天心血来潮,不知道为什么和 Perl + Nginx + FastCGI 配置 耗上了。但是失败了,记录如下: 1)安装Nginx 1.4.3 ,我的是WINDOWS 7 系统,修改配置文件如下: location ~ .(pl|cgi|perl)?...

通吃岛-低手哥
2013/10/27
1.5K
7
用vertx实现高吞吐量的站点计数器

工具:vertx,redis,mongodb,log4j 源代码地址:https://github.com/jianglibo/visitrank 先看架构图: 如果你不熟悉vertx,请先google一下。我这里将vertx当作一个容器,上面所有的圆圈要...

jianglibo
2014/04/03
3.8K
3
基于 ThinkPHP 的内容管理系统--歪酷CMS

歪酷网站管理系统(歪酷CMS)是一款基于THINKPHP框架开发的PHP+MYSQL网站建站程序,本程序实现了文章和栏目的批量动态管理,支持栏目无限分类,实现多管理员管理,程序辅助功能也基本实现了常见的文...

鲁大在线
2013/02/19
6.8K
1
Windows PHP 加速器--WinCache

微软新推出了配合FastCGI模式使用的WinCache扩展,这是一个可以显著增加PHP应用在Windows环境下使用速度的PHP加速器。所有的PHP应用都能够利用这个扩展所提供的加速功能而不需要修改任何代码...

王道中强流
2012/11/09
5.3K
0
Nginx-Redis

Nginx-Redis 是为 nginx-perl 准备的异步 redis 客户端。 示例代码: use Nginx::Redis; ngxredis '127.0.0.1:6379', ['GET', 'mykey'], sub { my ($reply) = @; unless ($reply) { warn "er......

匿名
2012/11/19
3.1K
0

没有更多内容

加载失败,请刷新页面

加载更多

五分钟搞定WebRTC视频录制

WebRTC中文社区是一个为大家解决在使用WebRTC当中遇到问题所建立的社区,欢迎更多学习和使用WebRTC的人加入进来,一起建设。 视频录制 在之前的文章里我们提到过视频录制的两种方式:客户端录...

死磕音视频
9分钟前
9
0
互联网技术架构的设计原则 - 架构真经

这本书的英文原名是《Principles for Scaling Web Sites》,又名可扩展网站的50条军规,

这先生
10分钟前
5
0
📢📢 (2020.07.29)上午 10:30 📢📢开启第二轮红包赠书📚活动(小板凳请提前准备好)截至本月月末前还有最后 1 轮分享赠书活动 🎁(会在月末直接揭晓)具体...

本文分享自微信公众号 - 日拱一兵(gh_6235a38420b9)。 如有侵权,请联系 support@oschina.cn 删除。 本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。...

tan日拱一兵
07/28
0
0
CentOS-Docker安装Elasticsearch(单点)

下载镜像 $ docker pull elasticsearch:7.6.0 运行镜像 $ docker run --restart=always --name elasticsearch -d -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearc......

-自由人生-
20分钟前
19
0
贼好用的Java工具类库,GitHub星标10k+,你在用吗?

作者:Ryan Wang ryanc.cc/archives/hutool-java-tools-lib 简介 Hutool是Hu + tool的自造词,前者致敬我的“前任公司”,后者为工具之意,谐音“糊涂”,寓意追求“万事都作糊涂观,无所谓失...

路人甲Java
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部