Nginx实现负载均衡(中间件Weblogic)

it2022-05-05  103

1、通过nginx实现负载均衡 企业在解决高并发问题时,一般有两个方向的处理策略,软件、硬件,硬件上添加负载均衡器分发大量请求,软件上可在高并发瓶颈处:数据库+web服务器两处添加解决方案,其中web服务器前面一层最常用的的添加负载方案就是使用nginx实现负载均衡。 一、负载均衡的作用 1、转发功能 按照一定的算法【权重、轮询】,将客户端请求转发到不同应用服务器上,减轻单个服务器压力,提高系统并发量。

2、故障移除 通过心跳检测的方式,判断应用服务器当前是否可以正常工作,如果服务器期宕掉,自动将请求发送到其他应用服务器。

3、恢复添加 如检测到发生故障的应用服务器恢复工作,自动将其添加到处理用户请求队伍中。 二、Nginx实现负载均衡 同样使用两个Webloigc 两个异机节点(server1 与server2)模拟两台应用服务器,端口号分别为7002 和7003

1、Nginx的负载分发策略 Nginx 的 upstream目前支持的分配算法: 1)、轮询 ——1:1 轮流处理请求(默认) 每个请求按时间顺序逐一分配到不同的应用服务器,如果应用服务器down掉,自动剔除,剩下的继续轮询。 2)、权重 ——you can you up 通过配置权重,指定轮询几率,权重和访问比率成正比,用于应用服务器性能不均的情况。 3)、ip_哈希算法 每个请求按访问ip的hash结果分配,这样每个访客固定访问一个应用服务器,可以解决session共享的问题。 2、配置Nginx的负载均衡与分发策略 通过在upstream参数中添加的应用服务器IP后添加指定参数即可实现,如: 在nginx配置文件中nginx.conf

upstream tomcatserver1 { server 192.168.10.23:7002 weight=3; server 192.168.10.23:7003; } server { listen 8090; server_name localhost;

location / { proxy_pass http://tomcatserver1; index index.html index.htm; }

通过以上配置,便可以实现,在访问 localhost这个网站时,由于配置了proxy_pass地址,所有请求都会先通过nginx反向代理服务器,在服务器将请求转发给目的主机时,读取upstream为 tomcatsever1的地址,读取分发策略,配置server1权重为3,所以nginx会将大部分请求发送给7002服务器上的server1,也就是7002端口;较少部分给server2来实现有条件的负载均衡,当然这个条件就是服务器1、2的硬件指数处理请求能力。


最新回复(0)