如何提高业务系统的稳定性
如何提高业务系统的稳定性
- 业务系统初始
- 云上高可用架构
- 如何降低日常业务中断的风险,比如停机发布,单机故障等?
- 如何提升应用服务的负载均衡能力?
可以说,业务系统是企业的门面,业务系统的稳定性,直接决定这用户对于企业的信任度。对于业务系统来说,业务系统的问题最直接影响的就是用户的体验,耗费的也是用户对于企业的信任值。那么如何提高业务系统的稳定性呢?
业务系统初始
业务系统初始时刻,企业为了可以快速上线来把握用户,往往会采用比较直接易构建的方式,比如:单点架构。单点架构是一种常见的部署架构,满足业务基本需要,通常是由一台服务器,一个单节点数据库组成。这样的架构上线操作简单,不用过多的考虑数据共享问题,上线周期短。
但是同样的,带来的劣势也很明显:
稳定性不够,单一节点故障,业务系统整个不能用;
弹性能力不够,当用户量波动时,峰值用户量可能会导致业务系统无法响应,扩容成本高;
升级不变,每次系统升级都需要停机升级,降低用户体验,且后期的服务管理不便。
随后,就出现了主从服务架构,这样在一定程度上缓解了单点架构带来的问题,但是仍然不是最优解决方案。那么这里来介绍一种云上版高可用架构。
云上高可用架构
在介绍云上高可用架构之前,我们先来看一款简版的架构图
当用户访问应用时,用户的请求会经过负载均衡ALB的转发策略,负载均衡会按照一定规则转发用户请求到具体的云服务器ECS,当其中任何一台云服务器ECS服务不可用或者宕机,负载均衡检测的服务不可用时,会自动将请求转发至其他的云服务器ECS,这样就保证了业务系统的高可用性。数据库采用的是云数据库RDS MySQL版,将能最大限度的保证企业业务数据的安全性。同时,ALB、ECS、RDS均具备跨可用区的自动备份和灾难恢复能力,这也进一步确保关键数据的稳定性和安全。
基于以上对于云上高可用架构的理解,下面我们再来看看以下的讨论。
如何降低日常业务中断的风险,比如停机发布,单机故障等?
有了以上云上高可用架构的理解之后,那么对于如何降低日常业务中断风险,就有了一个较好的解决方案。云上高可用架构本质上就是为了解决单击故障,那么采用了云上高可用架构之后,单击故障自然也就不存在了。至于停机发布,上面也说了,负载均衡ALB会时刻检测云服务器ECS的应用服务状态,因此你在操作业务系统升级时,可以直接逐个停掉对应的单点云服务器ECS进行升级操作,升级完成后重启业务系统应用后,负载均衡ALB会自动检测到服务状态从而为服务分发请求,这也就解决了停机发布的窘境。
如何提升应用服务的负载均衡能力?
对于如何提升应用服务的负载均衡能力,当业务系统量较大,可以通过自动水平扩展的方式来增加云服务器ECS提供服务,通过负载均衡ALB来均匀分发用户请求,保证每一台云服务器ECS的响应处理都在其可承受的范围内。为了保证数据库的稳定运行,也可以辅以云数据库的Serverless 弹性伸缩能力,当业务系统请求量大时,自动弹性扩展数据库服务节点;当业务量恢复正常时,则自动弹性节减数据库服务节点,从而保证业务系统的服务没有明显变化,提升用户体验。