架构模式及其应用 | 内部分享
我把工作中用到的一些架构方面的设计模式分享给大家,分别是:单库单应用:最简单的,可能大家都见过;内容分发:目前用的比较多;查询分离:对于大并发的查询、业务;微服务:适用于复杂的业务模式的拆解;多级缓存:可以把缓存玩的很好;分库分表:解决单机数据库瓶颈;弹性伸缩:解决波峰波谷业务流量不均匀的方法之一;多机房:解决高可用、高性能的一种方法
这种模式一般只有一个数据库,一个业务应用层,一个后台管理系统,所有的业务都是用过业务层完成的,所有的数据也都是存储在一个数据库中的,好一点会有数据库的同步。
这种模式主要解决单机数据库压力过大,从而导致业务缓慢甚至超时,查询响应时间变长的问题,也包括需要大量数据库服务器计算资源的查询请求。
这个模式可以说是应对超高查询压力的一种普遍采用的策略,基本的思想就是在所有链路的地方,能加缓存就加缓存。
微服务模式可以说是后端的必备技能,花花绿绿、大大小小、国内国外的公司都在鼓吹,实践这个模式,可是大部分都没有弄清楚为什么要这么做,也并不知道这么做有什么好处、坏处,在这里,我将以我自己的亲身实践说一下我对这个模式的看法。
这种模式主要解决突发流量的到来,导致无法横向扩展或者横向扩展太慢,进而影响业务,全站崩溃的问题。
版权声明: 本文为 InfoQ 作者【空空】的原创文章。
原文链接:【http://xie.infoq.cn/article/5970e1497784ba0e400a6b896】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论