1.负载均衡原理
一台机器不能满足,则增加两台或者多台机器,共同承担访问压力。
应用集群:将同一应用部署到多台机器上,组成处理集群,接收负载均衡设备分发的请求,
进行处理,并返回相应数据。
负载均衡设备:将用户访问的请求,根据负载均衡算法,分发到集群中的一台处理服务器。(一种把网络请求分散到一个服务器集群中的可用服务器上去的设备)
2.负载均衡的作用
1.解决并发压力,提高应用处理性能(增加吞吐量,加强网络处理能力);
2.提供故障转移,实现高可用;
3.通过添加或减少服务器数量,提供网站伸缩性(扩展性);
4.安全防护;(负载均衡设备上做一些过滤,黑白名单等处理)
负载均衡分类:
根据实现技术不同,可分为DNS负载均衡,HTTP负载均衡,IP负载均衡,反向代理负载均衡、链路层负载均衡等。
负载均衡算法:
轮询、 随机、最少链接、Hash(源地址散列)、加权
硬件负载均衡:
采用硬件的方式实现负载均衡,一般是单独的负载均衡服务器,价格昂贵,一般土豪级公司可以考虑,业界领先的有两款,F5和A10。
价格:F5, 15w~55w不等;A10, 55w-100w不等。
优点:功能全面支持各层级的负载均衡,支持全面的负载均衡算法,支持全局负载均衡。一般软件负载均衡支持到5万级并发已经很困难了,硬件负载均衡可以支持。商用硬件负载均衡稳定性高,具备防火墙,防DDOS攻击等安全功能,提供售后支持。
3.常见问题
怎么配置负载均衡?
4.解决方案
1.部署至少两台服务器,我选择在本地部署一台jetty、一台tomcat。
2.在nginx.conf配置文件中http括号内添加如下配置:
upstream local_tomcat {
server localhost:8088;
server localhost:8089;}
server{
location / {
proxy_pass http://local_tomcat;}}
3.在hosts文件中添加解析域名
127.0.0.1 local_tomcat
5.扩展思考
什么是反向代理负载均衡?
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器,该服务器就可称之为代理服务器。由于代理服务器处在最终处理请求访问的服务器之前,因此可以在代理服务器上做负载均衡。