CentOS7安装Nginx和upstream-fair

前言

nginx默认有负载均衡功能,用于从upstream模块定义的后端服务器列表中选取一台服务器接受用户的请求。

默认包含轮询、权重、ip_hash和least_conn1四种策略。

upstream-fair

fair采用的不是内建负载均衡使用的轮换的均衡算法,而是可以根据页面大小、加载时间长短智能的进行负载均衡。

由于不是默认策略,在安装时需要重新编译,因此通常认为Yum版安装的Nginx无法添加此模块。

下载

一般下载位置放在nginx安装目录下,我的是/usr/local/nginx-1.17.2/。以下用变量NGINX_SOURCE_DIR表示。
zip

# NGINX_SOURCE_DIR: Nginx源码目录
NGINX_SOURCE_DIR=/usr/local/nginx-1.17.2/ &&\
wget https://github.com/gnosek/nginx-upstream-fair/archive/master.zip -P $NGINX_SOURCE_DIR && \
unzip $NGINX_SOURCE_DIR/master.zip -d $NGINX_SOURCE_DIR &&\
mv $NGINX_SOURCE_DIR/nginx-upstream-fair-master $NGINX_SOURCE_DIR/nginx-upstream-fair

源码

# NGINX_SOURCE_DIR: Nginx源码目录
cd $NGINX_SOURCE_DIR && git clone https://github.com/gnosek/nginx-upstream-fair.git

编译

基础编译参数参考Linux安装Nginx,而添加模块,只需要增加--add-module即可,由于上一步将nginx-upstream-fair放在Nginx源码根目录下,因此可以使用相对路径:

./configure <其他参数> --add-module=nginx-upstream-fair && make && make install

使用

使用非常简单,只需要在各个server上方添加fair关键字即可。

upstream demo-upstream-fair {
	fair;
	server XXX.com;
}

问题

安装过程中碰到了编译错误,大意是ngx_http_upstream_fair_module.c的543行没有找到default_port这个变量,然后参考issues/30解决了。

参考


  1. 默认为轮询 ↩︎

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
部署nginx安装nginx-http-flv-module模块的流程如下: 1. 安装编译工具和依赖库 在终端输入以下命令: ``` yum install gcc gcc-c++ autoconf automake make zlib zlib-devel openssl-devel pcre-devel ``` 2. 下载nginxnginx-http-flv-module源码 在终端输入以下命令: ``` wget http://nginx.org/download/nginx-1.18.0.tar.gz wget https://github.com/winshining/nginx-http-flv-module/archive/master.zip ``` 3. 解压源码包 在终端输入以下命令: ``` tar -zxvf nginx-1.18.0.tar.gz unzip master.zip ``` 4. 进入nginx源码目录并配置 在终端输入以下命令: ``` cd nginx-1.18.0 ./configure --prefix=/usr/local/nginx --add-module=../nginx-http-flv-module-master ``` 5. 编译和安装 在终端输入以下命令: ``` make make install ``` 6. 启动nginx 在终端输入以下命令: ``` /usr/local/nginx/sbin/nginx ``` 7. 验证nginx是否安装成功 在浏览器中输入服务器IP地址,如果出现欢迎页面,说明nginx已经安装成功。 8. 配置nginx-http-flv-module 打开nginx配置文件,一般路径为/usr/local/nginx/conf/nginx.conf,在http块中添加以下内容: ``` http { flv { server { listen 8080; # flv 直播流地址 location /live { flv_live on; # flv 直播流地址 flv_stream_name live; } # flv 点播流地址 location /vod { flv; # flv 点播流地址,需根据实际情况修改 root /usr/local/nginx/html; } } } } ``` 9. 重启nginx 在终端输入以下命令: ``` /usr/local/nginx/sbin/nginx -s reload ``` 现在,nginx-http-flv-module模块已经成功安装并配置完成。可以使用流媒体播放器访问服务器IP地址,播放flv视频。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值