企业应用架构演变: 单机程序->c/s->b/s->面向服务架构(SOA)->微服务架构
加粗的是单体程序
微服务架构
细粒度SOA,是强调小型短暂组件的SOA,小即是美
重点是服务,如何进行服务之间解耦
每个服务组件都可以独立开发、构建、测试、部署
自包含(如在容器中)
轻量级进程
使用REST风格web服务开发
通过Http进行通信(一定需要通过HTTP通信么?)
跟团队组织结构相关
基本模式:(API网关+n个单体服务结构)
SOA
公开基于简单对象访问协议(SOAP)
中间件,如企业服务总线(ESB)很重要
基于服务开发(表示层、服务层(可能按照业务服务分很多块服务API)、数据库)
单体服务
经典n层结构(表示层、应用层、业务逻辑层、DAO、数据库)
单体服务缺点
容易出现全局瘫痪性故障
小问题可能导致整体部署
难以实现频繁部署
难以跟上最新技术
难以满足业务增量需求
加载、构建、理解、维护都费时
微服务优点
可以解决单体服务那些缺点
能与敏捷方法、CI/CD(Jenkins/TeamCity/TFS/AuzeDevOps)更好配合
微服务构建管道
CI/CD构建过程: 清理代码、代码编译、执行单元测试、建立应用程序归档文件、在开发 QA等各种服务器上部署、执行功能和集成测试、创建映像容器、任何其他步骤、构建发布版本、标记发布版本
Docker 容器
每个容器具有自己的用户命名空间
依赖于基本的操作系统功能(如隔离服务)
容器中的应用程序可以是用任何语言开发
相互隔离
原文地址:https://www.cnblogs.com/PengQuanfeng/p/9809946.html
时间: 2024-11-06 03:28:18