大型互联网架构设计,讲究一个四件套
组合拳玩法,高并发
、高性能
、高可用
、高扩展
。
如果能掌握这四个方面,应付大厂面试以及日常工作中的架构方案设计基本不是什么难题。
今天,Tom哥就带大家学习下高可用
都有哪些设计技巧?
一、系统拆分
有句古话 "牵一发而动全身"。
面对一个庞然大物,如果没有一个合理的分工分层。任何一个小小失误都会被无限放大,酿成巨大灾难。
万物相通,回到我们的软件架构。
早前的系统都是单体系统,比如电商业务,会员、商品、订单、物流、营销等模块都堆积在一个系统。每到节假日搞个大促活动,系统扩容时,一扩全扩,一挂全挂。只要一个接口出了问题,整个系统都不可用。
“鸡蛋不能放在一个篮子里”,这种连带风险换谁都承受不起。
因此,系统拆分
成了更多人的选择。
慢慢的就有了我们现在看到的微服务
架构,将一个复杂的业务域按DDD的思想拆分成若干子系统,每个子系统负责专属的业务功能,做好垂直化建设,各个子系统之间做好边界隔离,降低风险蔓延。