如果有一天,抖音微信微博支付宝淘宝都不可用了
对于互联网服务,7 * 24小时的关键业务的不间断服务非常重要。作为享有互联网服务的人,您能想象Douyin Weibo不能在七分钟内装载的情况,丝绸不能在五分钟内开放,并且支付宝不能在三分钟内支付?难以想象,我们生活在微信,微博,QQ,Douyin,Alipay,Taobao,Meituan Waimai和Didi Doache,曾经通过打开该应用来聊天,购物,观看视频,出租车和订购外卖。这些服务始终是运作的,他们都保证了一线制造商开发商和运营和维护人员的努力工作。
那么一线大厂的人员如何保证系统的高可用性?四个字:更多的使用寿命。所谓的“LIVE”是指随时提供服务,多功能是指业务能够在多个地方任何时间提供服务。我们知道该服务部署在服务器上,服务器安装在计算机室中。我们也知道没有什么是万无一失的,电脑室可能无法工作,如电脑室的停电,在电脑室中的火灾,电脑室的地震等。所有这些不可抗拒的因素都会引起所有服务器电脑室崩溃,导致企业崩溃。 ,所以我们需要更多服务。
如果在解决方案上实现了多主动服务,则它将是同一个城市的双重活动架构,两个地方的三中心架构,以及不同地方的多主动架构。
所谓的城市内部双重活跃,是指在同一个城市或类似地区建立两个电脑室。这样的优点是计算机房间与计算机室之间的距离相对较好,通信链路的质量非常好,数据传输快,并且很容易保证数据的一致性。在同一个城市主动架构中,在前端请求数据到来之后,它将根据启动请求的地理位置分发。在请求分发到最近的计算机房间后,计算机房中的应用程序将互相调用,数据将写入数据库以完成业务。要求。部署在应用程序中的机器群集具有ZooKeeper集群,它将生产者和消费者节点的数据实时与双向同步。数据库群集的部署采用主站和从模式,通过读写分离将读取数据路由到计算机室中的最近节点。写入数据被路由到主节点所在的计算机房间。如果某个计算机房间失败,操作和维护人员只需要更改路由方法将流量路由到另一台计算机。
城市内部双极架构有两种优点。首先是在同一城市提供城市内部双重活动和数据备份,确保高服务可用性和高数据一致性。第二是架构相对简单,同一城市之间的距离相对较短,网络通信质量好。但是,有一些缺点。首先是当数据库写入数据时,通过计算机室的呼叫增加了响应时间,这将带来一定程度的用户体验影响。第二是如果城市有地震或火灾,整个服务将瘫痪。 。
两个地方的所谓三个中心是指同一个城市和一个远程灾难恢复中心的两个中心。这是同一城市的直播架构的升级版本,解决了应用程序提供服务,如果在同一个城市中的火灾和地震等力量,则提供服务。但实际上,灾难恢复中心的数据有风险是“冷”。通常,中央计算机室中的数据定期同步,并且没有真正的用户请求。如果它确实到达同一城市的双重中心,则无法为外界提供服务。当灾难恢复中心恢复业务时,提供外部服务需要一段时间。
在不同的地方所谓的多人生活意味着不同地区有多个计算机房,为外界提供服务。在远程多主动架构中,存在许多挑战,例如由物理距离,数据一致性,数据完整性等引起的延迟。在远程多主动架构中,我们采用了一种更加巧妙的方法,即业务应用程序基于业务数据分为三类。第一类是对延迟不敏感但具有非常高的数据一致性要求,第二类是对延迟敏感但不需要高数据一致性的应用程序。第三类是需要在一次操作中完成所有业务操作的应用程序。在服务高可用性方面,可以根据应用的特征部署不同的解决方案。在请求分发方面,为了确保用户请求可以正确输入我们所属的业务模块,我们将在计算机房间的入口处部署网关,根据用户请求的类型分发到相应模块的流量。在数据同步方面,仍然根据业务类型和业务部署模式执行读取和写入备份。
不同地方的多生效结构具有三个优点和两个缺点。第一个优点是,在不同的地方,服务更加活跃,数据在不同的地方更为活跃。多个地区有机器可以随时提供服务,这带来了灾害耐受性的显着改善。第二个优点是服务可以水平扩展,业务快速增长,因此只需部署一些地理计算机房。第三个优势是预防能力的高风险能力。用户请求分发到多个计算机房和地区,可以避免由停电,火灾和地震引起的服务不可用,并降低故障范围。其首先缺点是部署和操作和维护的高成本。我们可以看到应用程序分类,远程部署和数据同步在多个位置的多个计算机房中的多个服务器中同时执行。第二个缺点是由地区,计算机房和服务呼叫造成的延迟。
在这一点上,我们已经完成了在同一个城市的双重活跃活动,三个中心在两个地方,以及不同地方的多主动活动。要诚实地,我们生活在互联网时代,我们真的无法想象它会像Douyin,丝绸,微博,支付宝和淘宝网一样,不再使用它?幸运的是,另一个互联网海报之一为我们建立了高度可用的服务架构,以确保我们的普通互联网生活。