我们都知道负载均衡、集群和高可用是不同的概念,但是又有着千丝万缕的关系。
具体是什么样的区别和联系呢?笔者经过自思考,给出己浅显的答案。如果不满意、持反对意见,那么一定是你对,记得来评论区教育我~
负载均衡
负载均衡的本质其实就是能够轮询。侧重点在路由和算法
背景:负载均衡首先要有一个集群,集群里面是相同的很多个节点,当请求这个集群时,具体的业务逻辑会分配到某个具体的节点。
负载均衡策略:介绍以下4种负载均均衡策略
①“每次选下一个”,轮询
②随机
③按照节点性能不同,按比例分配比如第一个节点3次,第二个节点5次,第三个节点1次
④hash,使用一致性hash算法在实现负载均衡的同时,还可以保障同一个客户端发送的请求每次都到达同一个节点
集群
集群的本质就是“一群人干一件事”,侧重点在数量
集群是区别于单点的概念,只要两个或以上服务器干同一件事,就能称为集群(实际上不一定是两个或以上服务器,也可以是两个或以上容器,甚至可以用两个或以上的不同端口做同一件事模拟集群)
高可用
高可用的本质是一直可以用,侧重点是天塌下来服务也不能下线,服务器着火服务要还能用
高可用要求服务在出现各种状况下还能使用。
比如某个节点挂了,怎么办?是不是让其他节点补上?
链路不通怎么办?是不是服务降级,要不要限流,怎么限,如何恢复。
节点内业务逻辑出问题了(抛异常)怎么办?