nginx负载均衡策略
产品型号:ThinkPad E15系统版本:CentOS 8Nginx 负载均衡策略:1. 轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器宕机,能自动剔除。 ``` upstream backserver { server 192.168.1.62; server 192.168.1.64; } ```2. 指定权重 指定了轮询的几率,weight 权重大小和访问比率成正比,用于后端服务器性能不均的情况。 ``` upstream backserver { server 192.168.1.62 weight=1; server 192.168.1.64 weight=2; } ```3. IP哈希 每个请求,按访问IP的哈希结果进行分配,这样每个访客,会固定访问同一个后端服务器,可以解决session的问题
使用Nginx实现负载均衡
负载均衡SLB
为了应对高并发,我们引入了负载均衡,就是将原本需要一台服务器处理的业务,分配给了多台服务器进行处理,而分配的规则就是SLB算法。 SLB(server load balance)是负载均衡的缩写。 负载均衡主要有三种算法: ①轮训法 通过将用户的请求轮流分配给配置好的服务器进行解析 ②随机法 通过随机因子分配给不同的服务器,通过分散性,达到均衡 ③最小连接法 通过选择最少连接的服务器进行分配,就是能者多劳 负载均衡主要有三种实现方法: ①dns轮训 通过dns解析到不同的ip来进行负载均衡 ②反向代理 一般通过nginx进行代理解析,服务请求先到达nginx代理服务器,然后又nginx进行转发 ③NAT(LVS) 该技术通过一个地址转换网关将每个外部连接均匀转换为不同的内部服务器地址,因此外部网络中的计算机就各自与自己转换得到的地址上的服务器进行通信,从而达到负载均衡的目的
nginx如何实现负载均衡、限流、缓存、黑白名单和灰度发布
1.负载均衡配置 2.失败重试配置 在fail_timeout时间内失败了max_fails次请求后,认为上游服务器不可用,就会将服务地址剔除掉,fail_timeout时间后会再次将服务器加入存活列表进行重试。 limit_req_zone指令设置参数 参数说明 limit_req_zone定义在http块中,$binary_remote_addr表示保存客户端IP地址的二进制形式。 Zone定义IP状态及URL访问频率的共享内存区域。zone=keyword标识区域的名字,以及冒号后面跟区域大小。16000个IP地址的状态信息约1MB,例子区域可以存储160000个IP地址。 Rate定义最大请求速率。示例中速率不能超过每秒10个请求。 设置限流 burs排队大小,nodelay不限制单个请求间的时间
Nginx配置一套打通:基本概念、命令、反向代理、负载均衡、动静分离、高可用
Nginx配置一套打通的基本概念、命令、反向代理、负载均衡、动静分离、高可用如下:基本概念: Nginx是一个高性能的HTTP和反向代理服务器,以其占有内存少、并发能力强的特点而著称。 主要用于驻留在因特网上,接收客户端请求并将其转发至服务器,与服务器进行信息交换,特别是HTTP协议的使用。常用命令: 安装命令:根据操作系统不同,安装命令会有所差异,如使用aptget install nginx或yum install nginx。 启动命令:sudo systemctl start nginx 或 sudo service nginx start。 停止命令:sudo systemctl stop nginx 或 sudo service nginx stop。 重启命令:sudo systemctl restart nginx 或 sudo service nginx restart。