《从零开始学架构》读书笔记八:可扩展的模式

可扩展架构的核心思想基本可以总结为一个字:拆,按照不同的思路来拆分软件系统,就会得到不同架构,常见的拆分思路有三种:
1.面向流程拆分(分层架构)
2.面向服务拆分(SOA,微服务)
3.面向功能拆分(微内核架构)
我们以TCP/IP协议为例来说明流程,服务,功能的区别和联系,所谓流程就好比对应五层网络模型应用->传输->网络->数据链路->物理层
不管最上层的应用是什么,这个流程都不会变
而应用层的HTTP,FTP,SMTP等就是服务,分别提供web服务,文件服务,邮件服务等,这这些服务都有其对应的功能,比如HTTP提供GET,POST功能,FTP提供上传下载功能。
下面主要我们要谈的就是根据这几种拆分所形成的三种对应的软件架构

分层架构

分层架构一般呈现层级之间的依赖关系,层次之间要有一定的隔离

SOA架构和微服务

SOA提出的背景就是企业内部的IT系统重复建设且效率低下,使用ESB来屏蔽异构系统对外提供各种不同的接口的方式,以此来达到服务间高效的互通。说到微服务其实就是利用restful协议来实现ESB的SOA,是一种更细粒度和轻量级的SOA,微服务虽然轻量级,但是其架构设计并不简单,因为它吧ESB所做的事情放到了其基础设施中去。(服务注册和发现,服务路由,网关,服务跟踪,服务监控,服务容错,配置中心)

微内核架构

也被称为插件化架构,是一种面向功能进行拆分的可扩展架构如OSGI.

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 微服务最近非常流行,各大互联网公司纷纷采用微服务架构体系,微服务架构模式正在为敏捷部署以及复杂企业应用实施提供巨大...
    Sting阅读 9,124评论 0 57
  • 一、传统的可扩展性架构之分层架构与SOA架构 1、分层架构 (1)概念 分层架构是很常见的架构模式,它也叫 N 层...
    小manong阅读 5,235评论 0 1
  • 软件架构的演进 讲正事儿之前,先讲个故事——话说,从前有个叫周星星的少年,从摆街边摊起家,通过自己的奋斗,最终成为...
    歌湾汐云阅读 2,360评论 0 27
  • 摘要:本文中,我们将进一步理解微服务架构的核心要点和实现原理,为读者的实践提供微服务的设计模式,以期让微服务在读者...
    Java架构师Carl阅读 5,875评论 0 20
  • 五年前,土里土气傻里傻冒扛着行李来到这里。 一切充满好奇,第一个星期很快就过去了……慢慢的时光与琐碎磨灭了我的耐心...
    次次都阅读 166评论 0 1