一、了解集群
1.1.什么是集群?
多台机器共同完成一件事情,这就叫做集群。
1.2.为什么要使用集群?
一台机器所能承担的存储和计算能力是有限的,需要使用多台机器来分担它的压力。
1.3.集群中“节点”是什么意思?
集群中的“节点”表示集群中的一台机器。
1.4.集群有哪些特点?
- 可扩展性:动态添加节点来增强集群的性能。
在传统项目(例如OA、ERP等)里往往用不到集群,因为用户量是有限的,一般一台服务器就能满足使用了,但是在互联网项目中,用户量往往是无法估量的,随着用户的高速增长,服务器里会增加大量数据和日志信息,此时一台服务器就显得不够用了,需要利用集群的可扩展性,动态添加服务器节点,以支撑项目的正常运行。 - 高可用性:一个节点的应用发生故障时,其他节点会自动接管故障节点上的应用。
单个服务器因高压力而崩溃时会导致整个项目都崩溃掉,而集群的多个节点会分担单个节点的服务器压力,从而变得高可用。
1.5.集群有哪些能力?
- 负载均衡:指的就是高可用性,服务器的访问压力过大时,通过添加服务器的节点来分担单个节点上的压力。
- 错误恢复:如果是单个节点,服务器上的应用程序挂了会导致整个项目瘫痪掉。而使用集群的话,单个节点的应用程序挂掉,其他节点的应用程序还可以正常运行,不会导致整个项目的瘫痪,可以利用这个能力对瘫痪节点做错误的恢复抢修。
1.6.集群和分布式有什么区别吗?
- 相同点:集群和分布式都是由多个节点去完成一件事。
- 不同点:
集群:每个节点所负责的工作都是一样的(有点像赛龙舟的划桨手,每个划桨手就是一个集群节点,所有划桨手的工作都是一样的)。
分布式:每个节点所负责的工作都是不一样的,每个节点都要负责不同的服务(有点像现代乐队的成员,有吉他手、贝斯手、鼓手、主唱,他们每个人所承担的工作都是不一样的)。
集群和分布式经常会混合在一起出现,比如从宏观来看是分布式的,但是分布式中的某一个节点是以集群的形式出现的。例如赛龙舟,由两部分组成,一个人击鼓,一群人划舟,这就是分布式,