nginx

本文详细介绍了Nginx的安装步骤,包括从官网下载、解压、预编译、解决依赖、编译安装到启动的过程。同时,深入讲解了如何通过配置Nginx实现负载均衡,以及Nginx与Kafka结合的应用场景,为高并发场景下的数据处理提供了实用指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. nginx是一个高性能的HTTP和反向代理服务器(反向代理:代理服务器接收internet连接请求,将请求转发给内部网络上的服务器,并将从服务器上的到的结果返回给Internet上请求连接的客户端。)。轻量级web服务器/反向代理服务器及电子邮件代理服务器,占用内存少,并发能力强。(负载均衡:之间在现有网络结构之上,并提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽,增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。原理是数据流量分摊到多多个服务器上执行,减轻每台服务器的压力,多台服务器共同完成工作任务,提高数据的吞吐量)
  2. 安装nginx

1.官网上下载nginx安装包,上传至linux
2.解压

tar -zxvf nginx -C /usr/local/src

3.预编译

cd /usr/local/src/nginx
./configure

4.提示缺少pcre安装包,使用Yum安装

yum -y install gcc pcre-devel openssl openssl-devel

5.再继续预编译

cd /usr/local/src/nginx
./configure

6.编译并且安装

make && make install

7.启动nginx

cd /usr/local/nginx
sbin/nginx

8.查看nginx进程

ps -ef | grep nginx
netstat -anpt | grep nginx //查看nginx访问端口
  1. 配置nginx,实现负载均衡

    1、cd /usr/local/nginx/conf
    2、vi nginx.conf

    http {
       #响应数据的来源,以及权重配置(weight)
       upstream tomcats {  
           server  slave4:8888 weight=1
           server  slave5:8888 weight=1
           server  slave6:8888 weight=1;
       }
        server {
             listen                 80;
             server_name     slave5;
              # 过滤所有的请求都交给配置的机器处理
              location ~ .* {
                   proxy_pass   http://tomcats;
               }
         }
    }
    

    3、重启nginx

    sbin/nginx -s reload
    
  2. nginx+kafka (nginx将产生的数据传入kafka)
1、yum -y install git //安装git
2、cd /usr/local/src
3、git clone https://github.com/edenhill/librdkafka   // 将kafka c端源码clone到本地
4、cd librdkafka
5、yum -y install gcc-c++ pcre-devel zlib-devel  //下载依赖包
6./configure
7、make && make install
8、cd /usr/local/src
9、git clone https://github.com/brg-liuwei/ngx_kafka_module  //克隆nginx整合kafka源码
10、wget http://nginx.org/download/nginx-1.8.0.tar.gz //下载nginx-1.8.0安装包
11、tar -zxvf nginx-1.8.0.tar.gz    // 解压
12、cd nginx-1.8.0
13./configure --add-module=/usr/local/src/ngx_kafka_module/
14、make && make install
15、cd /usr/local/nginx
16、vi conf/nginx.conf
http {
    kafka;
    kafka_broker_list slave3:9092 slave4:9092 slave5:9092 slave6:9092; 	
    server {
        listen       80;
        server_name  slave6;
        #url-/kafka/track中的log数据将写到track的topic里
    	location = /kafka/track {
                kafka_topic track;
        }
        #url-/kafka/user中的log数据将写到user的topic里
    	location = /kafka/user {
                kafka_topic user;
        }
}
17、启动zookeeper、kafka
18、kafka-topics.sh --create --zookeeper master:2181,slave1:2181,slave2:2181 --relication-factor 3 --partitions 3 --topic track  //创建track的topic
19、kafka-topics.sh --create --zookeeper master:2181,slave1:2181,slave2:2181 --relication-factor 3 --partitions 3 --topic user//创建user的topic
20、echo "/user/local/lib" >> /etc/ld.so.conf  //告诉Linux nginx加载so文件的位置
21、ldcondif
22、sbin/nginx -t   //测试启动nginx
23、sbin/nginx //启动nginx
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值