Linux下Nginx安装及负载均衡部署

1.介绍

Nginx 支持多种负载均衡算法,如轮询、加权轮询、IP 哈希、最少连接数等。通过负载均衡,可以将客户端的请求合理地分配到多个后端服务器上,避免单个服务器负载过高,提高系统的整体性能和可靠性。例如,在一个由多台应用服务器组成的集群中,Nginx 可以根据不同的算法将用户的请求分发到不同的服务器上进行处理。
请添加图片描述

Nginx常用功能

1.1 Http代理,反向代理

作为web服务器最常用的功能之一,尤其是反向代理。
在这里插入图片描述
Nginx在做反向代理时,提供性能稳定,并且能够提供配置灵活的转发功能。Nginx可以根据不同的正则匹配,采取不同的转发策略,比如图片文件结尾的走文件服务器,动态页面走web服务器,只要你正则写的没问题,又有相对应的服务器解决方案,你就可以随心所欲的玩。并且Nginx对返回结果进行错误页跳转,异常判断等。如果被分发的服务器存在异常,他可以将请求重新转发给另外一台服务器,然后自动去除异常服务器。

1.2 负载均衡

Nginx提供的负载均衡策略有2种:内置策略和扩展策略。内置策略为轮询,加权轮询,Ip hash。扩展策略,就天马行空,只有你想不到的没有他做不到的啦,可以参照所有的负载均衡算法,给他一一找出来做下实现。

上3个图,理解这三种负载均衡算法的实现
Ip hash算法,对客户端请求的ip进行hash操作,然后根据hash结果将同一个客户端ip的请求分发给同一台服务器进行处理,可以解决session不共享的问题。
在这里插入图片描述

1.3 Web缓存

Nginx可以对不同的文件做不同的缓存处理,配置灵活,并且支持FastCGI_Cache,主要用于对FastCGI的动态程序进行缓存。配合着第三方的ngx_cache_purge,对制定的URL缓存内容可以的进行增删管理。

1.4 Ngix相关地址

源码:https://trac.nginx.org/nginx/browser

官网:http://www.nginx.org/

2.Linux下Ngix服务安装(Centos为例)

2.1 依赖安装

检查是否安装gcc,若没有安装执行如下命令:

yum -y install gcc

pcre、pcre-devel、zlib、openssl安装,安装的必要性:(1)pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式,所以需要安装pcre库。(2)zlib库提供了很多种压缩和解压缩方式nginx使用zlib对http包的内容进行gzip,所以需要安装;(3)openssl是一个安全套接字层密码库,nginx要支持https,需要使用openssl。

yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel

2.2 Ngix主程序安装

下载Ngix安装包(tar.gz格式),下载地址:http://nginx.org/download/,选择需要的版本:
在这里插入图片描述
或在主机使用如下命令:

wget http://nginx.org/download/nginx-1.29.0.tar.gz

把压缩包解压到/usr/local,并进入路径:

tar -xzvf nginx-1.29.0.tar.gz -C /usr/local/
cd /usr/local/nginx-1.29.0

按照如下命令配置编译:

./configure --prefix=/usr --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module --http-log-path=/var/log/nginx/access.log -
posted @ 2025-08-23 15:00  yfceshi  阅读(27)  评论(0)    收藏  举报