系统架构演化史
Posted hanruikai
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了系统架构演化史相关的知识,希望对你有一定的参考价值。
原始时代-单机服务
一台服务器上面部署服务和数据库,原始时代。
石器时代-部署多个服务
随着用户量的增加,需要提升系统处理能力,为了保证数据一致性,所以需要扩充服务,如下图:
兵器时代-读写分离
随着业务的继续增加,再扩容服务无法提高性能,因为数据库成为了瓶颈。如何处理呢?考虑到数据的读取场景比较多,耗费资源,我们把读写进行分离。
于是就有了mysql读写分离架构。一台slave负责读操作,一台master负责写操作,通过bin log异步同步数据。salve可以水平扩展。
再加上缓存和CDN,能够应付一般的业务量级。
让子弹飞-消息队列架构
SOA架构
如果大家看过动漫《工作细胞》,一定会对萌萌哒的血小板妹妹印象深刻,《工作细胞》通过动漫拟人的方式讲述了人体中不同细胞的职责和工作方式。每种细胞都有自己独特的功能,血小板负责止血和修复创伤,而T细胞负责吞噬异物和发现入侵者。
软件系统变得越来越复杂,参与的开发者就越多,应用系统的分离和分化就变得很有意义了。面向前端的API应用服务器不再真正的处理业务逻辑而是调用专门的服务器来完成。
单点登录(SSO)是一个典型的面向服务的架构,在互联网公司中被广泛使用。国内互联网巨头往往拥有多个系统,例如腾讯的QQ音乐、空间都可以使用同一个QQ号登陆。于是用户服务和认证服务被剥离开来,各个系统之间通过统一登录和管理用户信息,用户的体验得到了极大的提升,这就是面向服务架构的一个例子:
SOA侧重于企业级范围,微服务侧重于单个应用的架构模式
SOA一般共享ESB, enterprise service bus
服务颗粒度不同
交互方式不同
微服务
以上是关于系统架构演化史的主要内容,如果未能解决你的问题,请参考以下文章