课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
功能的分离与降级是实现软件开发高可用性的一个常用方法,下面我们就通过案例分析来了解一下具体情况吧,希望通过对本文的学习,大家对于软件开发能够有更多的了解。
1.功能分离:划分核心功能和非核心功能,将核心功能和非核心功能物理隔离
这里有两个关键点:
先要区分核心功能和非核心功能。
例如我们的游戏接入业务中,登录、注册、校验是核心功能,消息推送、日志上报等是非核心功能。核心功能是用户玩游戏必须的,核心功能一旦有问题,玩家就不能玩游戏了;而非核心功能即使有问题,暂时也不会立刻影响玩家玩游戏,而往往非核心功能的变动反而比较频繁。因此,优先保证核心功能正常,是我们要的目标。
其次是物理隔离。
包括数据库、服务器、缓存等都要隔离,因为只要核心功能和非核心功能存在共享的资源,就有可能因为非核心功能影响核心功能。举个简单的例子,如果数据库共用一套,那么非核心功能如果出现了大量的整表查询,核心功能同样受到影响。整体的架构示意见图4。
2.功能降级:当出现故障的时候,可以将非核心功能直接降级,保护核心功能不受影响
拆分为核心功能和非核心功能后,虽然物理上两者隔离了,但有的业务还是需要核心功能和非核心功能配合才能完成,这就存在了一定的风险。比如说消息下发(非核心功能)需要获取用户的信息(核心功能),如果大量消息下发的话,就会给核心业务系统产生较大的压力。这种情况下我们可以通过将非核心功能停掉,以保证核心功能不受影响。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。