什么是双机?什么是集群?什么是分布式?他们之间的区别是什么?双机切换的原理是什么?
双机就是字面意思,两台服务器同时在线。
双机存在的意义是增加的服务的冗余能力。双机存在两个角色一个是主服务器,一个是从服务器。同时存在网络中,主服务器提供服务,从服务器实时同步主服务的数据。
当主服务器发生故障时,从服务器自动切换为主提供服务。但是及时自动切换,也是还会在切换的时刻当前连接的会话会断掉。当主服务器修复好后,从服务器自动切换到从节点状态。
分布式就是字面意思,不同的服务存在不同的物理位置或者不同的网络中。
分布式存在的意义就是提高服务的处理速度、解决某些业务场景。比如:可以将一个大任务切换成多个小任务,分发到不同的分布式设配中去执行,然后通过网络通信将所有任务执行的结果进行汇总,返回给用户。这样可以提高任务处理的速度,降低硬件的成本。如果你要在NAT网络中要将数据上传到某个集中平台,不通过分布式的部署方式,无法将NAT网络中的资产信息上传到平台后不会混淆,通过分布式的方式部署agent解决这个问题。
当某个分布式的计算节点发生故障时,并不会对整个系统对外的服务产生影响。增加了系统对外的稳定性、可靠性。
集群就是有很多的服务器同时对用户提供服务。
集群将所有的服务进行了分布式部署,并且中间还有负载均衡系统,将所有的用户操作分发到不同的服务器上。这样可以很好的提高业务系统的稳定性、可靠性、高性能。
当整个集群中的某台设备发生故障,不会对业务系统对外提供的客户服务产生影响。如果整个集群宕机那业务避免业务宕机。
如图:日志采集器通过网闸后将日志数据发送日志平台,日志采集器与日志审计是分布式部署,完成不同的任务。
双机、分布式、集群站在用户感知角度就是一个系统。这些技术都只是不断提高系统的稳定性、可靠性发展出来的不同的系统架构。但是整体宕机是业务系统永远存在的问题。也就是现在阿里云、腾讯云、华为云提供的服务,没有人声明为100%不宕机,只能通过异步灾备、集群等部署手段不断减少宕机事件,不能杜绝。就跟网络安全做加固一样,永远无法做到清楚所有的安全漏洞。