南宫28


 

南宫28深化了解负载均衡经典事例

日期:2021-08-03 13:38:17 浏览次数:114 分类:负载均衡 来源:ng28南宫娱乐官网 作者:ng28南宫娱乐注册

  架构的一个要害组件,首要用来进步功能和可用性,经过负载均衡将流量分发到多个服务器,一起多服务器能够消除这部分的

  在这个比方里边,用户直接经过衔接Web Server,假如这一个Web Server挂了那么整个体系都无法运用,也便是咱们常说的体系中的单点故障,相同假如许多的用户一起拜访这一台服务器,那么这些用户很或许会遇到加载时刻缓慢或许底子无法衔接的问题。

  这部分的单点故障能够经过引进负载均衡器和至少另一个Web Server来缓解。一般来说一切后端服务器会供给相同的内容,以便用户不管拜访哪个服务器都会收到共同的内容。一起因为有多台服务器一起供给服务,也加大了体系的负载才能进步了功能。

  因为一般程序员触摸到的负载均衡或许大多都是处理HTTP、HTTPS流量的,但实际上负载均衡还能够处理TCP和UDP流量(比方对数据库集群的拜访、DNS等)。

  Round Robin— 轮转(Round Robin)意味着服务器会被按次序地挑选,比方负载均衡器会将第一个恳求分配给第一个服务器,然后下一个恳求分配给第二个服务器,这样分配下去分配完一轮之后回到最初分配给第一个服务器(操作体系调度算法温习一下)。这种办法比较合适各服务器处理才能相同并且每个事务处理量差不多的时分。

  IP hash— 在这个算法下,负载均衡器依据恳求源的IP来决议分发给哪个服务器。这个办法确保了一个特定的用户会一向拜访相同的服务器。

  在负载均衡算法一节中咱们有一个条件,便是流量只会被分配到健康的服务器上,那么负载均衡器怎样去判别服务器现在是否健康呢?

  为了监控健康的服务器,健康检查一般会经过装备的协议和端口测验去衔接服务器来确保服务器正在监听。假如一个服务器的健康检查失利了,也便是说服务器无法正常呼应恳求,那么就会被主动的移除池子中,流量也不会被分配到这个坏掉的服务器直到它能经过健康检查。

  咱们都知道依据session的用户认证会在服务器存有session的一些信息,但当体系引进负载均衡的时分这样会呈现一些问题。

  为了处理这个问题一个是能够运用之前说的IP hash算法,这个算法依据IP来分配流量对应的服务器,所以能够确保同一个用户的流量会拜访到同一个服务器。另一个应用层的办法是sticky session,中文应该叫粘性会话,负载均衡器会设置一个cookie然后带有这个cookie的session都会被分配到同一个服务器上。

  正如最初所说,负载均衡器自身便是一个单点故障危险,其间一个处理计划便是双机热备(进步可用性的一大根本办法便是冗余)。

  双机热备计划为了处理负载均衡器的单点故障问题,引进了第二个负载均衡器,当主节点GG了之后切换到备用节点。在网上找了个比较形象的gif:

  这篇文章算是关于负载均衡的一个开始总结和一些自己的了解,比较合适期望对负载均衡有个开始全面了解的人,但因为我个人仅仅个萌新所以许多进阶的东西比方LVS啥的和一些大厂的实践剖析都没加也暂时没才能加,今后假如有触摸再补上吧(坑我先挖了)。小编在这儿持续的共享材料,需求关于分布式,微服务,功能优化,Spring,MyBatis的等源码知识点的录像视频材料和面试题(附答案),请重视我的专栏获取哦!


南宫28