标签:family tomcat 配置 127.0.0.1 color nbsp 分发 相同 任务
负载均衡其实就是负载均衡器。分两种:四层负载均衡器,七层负载均衡器。
四层负载均衡器 vs 七层负载均衡器
四层负载均衡器:主要在传输层实现负载均衡。主要针对于TCP协议
七层负载均衡器:主要在应用层实现负载均衡。主要针对于HTTP协议
负载均衡就是,将所有请求先到负载均衡器,在由负载均衡器采用负载均衡算法(轮询、IP绑定、权重)分发到不同实际的服务器中,这也就是服务器集群,集群的目的是为了减轻单台服务器压力。
当我们搭建集群使用负载均衡后会出现的一些问题:
分布式session一致性问题(session一致)
分布式job幂等性问题(任务重复调用)
分布式生成全局ID(id不能重复)
分布式锁解决方案
分布式配置中心
分布式日志收集系统
如果一个服务由多个服务器提供,需要把负载分配到不同的服务器处理,需要负载均衡。
1 #配置负载均衡 2 upstream test1{ 3 server 127.0.0.1:8080; 4 server 127.0.0.1:8081; 5 } 6 7 server { 8 listen 80; 9 server_name www.oyr.com; 10 11 location / { 12 #反向代理到负载均衡 13 proxy_pass http://test1; 14 index index.html index.htm; 15 } 16 }
负载均衡常用算法:
(1)轮询机制(nginx自带,默认就是轮询机制)
轮流访问,非常均匀,应用场景:服务器的配置都相同的情况下。
(2)权重机制(nginx自带)
使用weight配置权重,权重越高,请求越多。应用场景:在服务器配置不相同的情况下
1 #配置权重 2 upstream tomcat2 { 3 server 192.168.25.148:8081 weight=1; 4 server 192.168.25.148:8082 weight=4; 5 }
(3)ip绑定(nginx自带)
通过nginx获取ip地址,通过hash运算固定的分配到某台机器上。Ip绑定可以解决session共享问题。一个客户端只固定请求一台服务器session共享问题被解决。
待实现
(4)fail(第三方)
待实现
(5)url绑定(第三方)
待实现
绝大多数情况下,配置负载均衡都是根据服务器的性能。
当上游服务器(真实访问服务器),一旦出现故障或者是没有及时响应的话,应该直接轮训到下一台服务器,保证服务器的高可用。
1 server { 2 listen 80; 3 server_name www.itmayiedu.com; 4 location / { 5 ### 指定上游服务器负载均衡服务器 6 proxy_pass http://backServer; 7 ###nginx与上游服务器(真实访问的服务器)超时时间 后端服务器连接的超时时间_发起握手等候响应超时时间 8 proxy_connect_timeout 3s; 9 ###nginx发送给上游服务器(真实访问的服务器)超时时间 10 proxy_send_timeout 3s; 11 ### nginx接受上游服务器(真实访问的服务器)超时时间 12 proxy_read_timeout 3s; 13 index index.html index.htm; 14 } 15 }
标签:family tomcat 配置 127.0.0.1 color nbsp 分发 相同 任务
原文地址:https://www.cnblogs.com/itoyr/p/10072379.html