动力节点旗下在线教育品牌  |  咨询热线:400-8080-105 学Java全栈,上蛙课网
首页 > 文章

java负载均衡概述

08-07 16:48 276浏览
举报 T字号
  • 大字
  • 中字
  • 小字

负载均衡这个名词相信对很多已经有工作经验的java工程师来说,是非常熟悉的,但是对java零基础开始学习的人来说,还是比较陌生的。这篇文章主要为接触java不久、不知道负载均衡的朋友来介绍一下负载均衡是什么,讲一讲其相关内容。

在网站创立初期,我们一般都使用单台机器对外提供集中式服务但是随着业务量的增大,我们一台服务器不够用,在这个时候,就会把多台机器组成一个集群对外提供服务;但是我们网站对外提供的访问入口通常只有一个,比如www.wkcto.com那么当用户在浏览器输入www.wkcto.com进行访问的时候,应该如何将用户的请求分发到集群中不同的机器上呢这就是负载均衡要做的事情

总结一下负载均衡的定义:负载均衡通常是指将请求"均匀"分摊到集群中多个服务器节点上执行这里的均匀是指在一个比较大的统计范围内是基本均匀的,并不是完全均匀当一台服务器性能达到极限时,我们可以使用服务器集群来提高网站整体性能。这时需要一台服务器来充当调度者,用户所有的请求首先由他接收,调度者再根据每台服务器的负载情况将请求分配给某一台后端服务器去处理。在这个过程中,调度者合理分配任务,保证每一台服务器性能都能重复发挥。从而保持整个服务器集群性能最优这就是负载均衡。

负载均衡的实现方式主要有以下三种:

1重定向这种方式是通过将请求全部发送到前置机由前置机通过算法得出要分配给台应用服务器,然后响应给客户端,由客户端重定向到应用服务器的一种方式。这种方式,由于每一个的请求,都要重定向一下,所以效率不是很高

2反向代理这种方式,是通过在前置机,使用反向代理的方式,将请求分发到应用服务器,客户端无需再请求一次,实现方式通常有两种,一种是用交换机实现,还有一种是用nginx这一类的软件实现这种方式,由于不需要再次重定向,所以较第一种,效率较高,但是由于请求和响应都是通过前置机来的,所以对前置机的考验很大

3数据链路返回这种方式通过给应用服务器设置虚拟IP,然后通过修改mac地址的方式,将请求分发出去,而应用服务器收到请求后,可以直接响应给客户端,而不需要经过前置机。

最后是关于负载均衡会以两种办法实现,一种是硬件负载均衡比如F5、深信服、Array等优点是有厂商专业的技术服务团队提供支持,性能稳定

缺点是费用昂贵,对于规模较小的网络应用成本太高;二是软件负载均衡比如 Nginx、LVS、HAProxy等优点是免费开源,成本低廉

上面的内容就是对负载均衡的内容概述,包含了基本定义和三种实现方式。这些都是基础性的知识,希望大家将基础知识掌握好后,再去具体的在计算机上操作实现负载均衡。

0人推荐
共同学习,写下你的评论
0条评论
吃瓜的编程小哥
程序员吃瓜的编程小哥

6篇文章贡献22673字

作者相关文章更多>

推荐相关文章更多>

Java数据结构

HelloWorld10-31 08:24

浅谈MySQL中SQL优化的常用方法

军哥08-12 23:29

五分钟读懂UML类图

江湖人称小李白12-10 10:41

MyBatis开发框架的四大核心

IT逐梦者08-17 21:43

一次搞定continue,break和return

HelloWorld11-06 11:19

发评论

举报

0/150

取消