软考必过 - 系统架构师 - 软件架构设计 - SOA与微服务
世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程。
文章目录
- 软件架构设计
- 面向服务的架构(SOA)
软件架构设计
面向服务的架构(SOA)
- SOA特点
- 粗粒度
- 低耦合
- 标准化接口
- 服务构件架构(SCA)
- 描述用于使用SOA构建应用程序和系统的模型
- SOA关键技术
- 这些技术都是基于XML的
- UDDI(统一描述、发现和集成)
- 服务注册
- WSDL(Web服务描述语言)
- 服务接口定义
- 服务实现定义
- SOAP(简单对象访问协议)
- 消息传输规范
- 包括
- 封装
- 编码规则
- RPC表示
- 绑定
- 消息内容
- 封装 - Envelope
- SOAP头 - Header
- SOAP体 - Body
- REST(表述性状态转移)
- 支持的操作
- GET
- POST
- PUT
- DELETE
- 准则
- 网络上的所有事物都被抽象为资源
- 每个资源对应一个唯一的资源标识
- 通过通用的连接件接口对资源进行操作
- 对资源的各种操作不会改变资源标识
- 所有的操作都是无状态的
- 支持的操作
- SOA的实现方法
- 本地化设计,分布式工作
- 标准
- CORBA
- DCOM
- EJB
- Web Service
- 角色
- 服务提供者
- 定义并实现服务
- 将服务以WSDL的形式发布到服务注册中心
- 服务请求者
- 查找、绑定并调用服务
- 服务注册中心(可选)
- 连接服务提供者和服务请求者的纽带
- 服务提供者
- 操作
- 发布
- 服务提供者发布服务
- 查找
- 服务请求者查询服务
- 绑定
- 动态绑定
- 通过服务注册中心绑定
- 静态绑定
- 通过本地文件直接绑定
- 动态绑定
- 发布
- 应用系统分层
- 底层传输层
- HTTP、JMS、SMTP
- 服务通信协议层
- SOAP、REST
- 服务描述层
- WSDL
- 服务层
- 遗留系统包装
- 业务流程层
- 服务发现和调用
- 服务注册层
- UDDI
- 底层传输层
- 角色
- 服务注册表
- 功能
- 服务注册
- 服务提供者向服务注册表发布服务,包括服务身份、位置、方法、绑定、配置、方案和策略等描述性属性。
- 服务位置
- 指帮助服务提供者查询需要的服务
- 服务绑定
- 服务使用者根据合约开发代码,调用服务
- 服务注册
- 功能
- 企业服务总线
- 一个标准化的通信基础结构
- 使服务请求者和服务提供者进一步解耦
- 功能
- 消息传输、消息转换、消息路由
- 支持异构服务交互
- 支持多种协议
- 提供安全认证
- 数据格式转换
- 日志和监控等
- 微服务
- 是SOA的一种
- 特点
- 职责单一
- 轻量级通信(RESTFul API)
- 松耦合
- 独立部署
- 优势
- 技术异构
- 每个服务可以使用不同的技术开发
- 弹性
- 服务降级
- 扩展
- 可以针对单个服务扩展
- 简化部署
- 每个服务单独部署,不影响整个系统
- 与组织结构相匹配
- 可将服务与团队相对应
- 可组合性
- 标准化接口,可组合
- 可替代性
- 单个服务随时可以被替代
- 技术异构
- 挑战
- 分布式系统的复杂性
- 性能,网络通信
- 可靠性
- 数据一致性
- 运维成本
- 每个服务都需要独立的配置、部署、监控、日志收集等
- 部署自动化
- DevOps与组织结构
- 构建全功能的团队
- 服务间依赖测试
- 服务间依赖管理
- 分布式系统的复杂性
- 微服务与SOA
微服务 SOA 团队级,自底向上开展实施 企业级,自顶向下开展实施 细粒度 粗粒度 松散的服务架构 集中式服务架构 集成方式简单(HTTP/REST/JSON) 集成方式复杂(ESB/WS/SOAP) 服务能独立部署 单块架构系统,相互依赖,部署复杂
软考必过 - 系统架构师 - 软件架构设计 - SOA与微服务相关推荐
- 软考必过 - 系统架构师 - 系统架构设计
世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程. 系统架构设计 4+1视图 逻辑视图 用户 开发视图 程序员 进程视图 并发 物理视图 软硬件映射关系 特定场景 ...
- 软考必过 - 系统架构师 - 企业信息化与战略规划
世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程. 企业信息化与战略规划 信息 概念 不确定性的减少 信息化 概念 工业社会 -> 信息社会 意义 组织结构创 ...
- 复习七天通过软考高级「系统架构师」,我是如何做到的
前言 软考复习的方式可以分为两种:报班和自学.当然也有加QQ要求共同分摊网课费用的,当然被我义正言辞地无情拒绝.原因很简单:没钱.于是前前后后自学了七天,最终考过了系统架构师.或许我的学习模式不适合你 ...
- 软考高级-系统架构师-软件架构设计
本章节主要内容如下( 上午综合题可以考到20~26分,其中案例题和论问题都有涉及 ): 目录: 一.软件架构的概念 1.软件架构概念 2.软件架构发展史 3.软件架构的建模 4.4+1模型 二.软件架 ...
- 软考高项-系统架构师考试心得
报考初衷 2020年的系统架构师考试成绩和分数线已经出了,侥幸一次通过. 我是做测试的,2019年,2020年,在而立之年经历了内心迷茫的痛苦思考,关于当前和以后的事业抉择. 在不满当下,看不到未来的 ...
- 软考高项-系统架构师(论文)-架构风格
关于架构师论文: 备考架构师写论文的时候,发现网上可参考的范文很少,初写的时候很是浪费时间. 现在把自己学习的时候,写的论文分享出来,希望能对备考的同学有点帮助 架构风格: 摘要 2019年2月,本人 ...
- 系统架构师—软件架构设计(二)CS/BS/SOA/DSSA/ABSD
1.层次架构风格 1.1.两层C/S架构 客户端和服务器都有处理功能,相比较于传统的集中式软件架构,还是有不少优点的,但是现在已经不常用,原因有:开发成本较高.客户端程序设计复杂.信息内容和形式单一. ...
- 系统架构师—软件架构设计(一)概述、构建、视图、基本架构风格
1.软件架构概述 从需求分析到软件设计之间的过渡过程称为软件架构.只要软件架构设计好了,整个软件就不会出现坍塌性的错误,即不会崩溃. 架构设计就是需求分配,将满足需求的职责分配到组件上. 软件架构为软 ...
- 软考高级-系统架构师-软件架构设计练习题
目录: 1.第一部分习题 2.第二部分习题 1.第一部分习题 例1: 答案:C 例2: 答案:C A:选项 B:选项这里的测试并不是真正的在代码中运行而是使用实例进行验证 C:选项,架构复审人员需要外 ...
最新文章
- 报名 | DeeCamp2019:实战AI 铸造定雨神针
- Android应用资源---布局资源类型(Layout)
- php的filter input,记一个php://filter和php://input的CTF题
- 2018-2019-1 20189218《Linux内核原理与分析》第五周作业
- halcon知识:对空图像的系列操作
- 您好GroovyFX
- [CEOI2008] order
- VMware Workstation虚拟机窗口小,无法显示内部系统全部桌面
- 【数据结构与算法】顺序表V3.0的Java实现
- python 数据库查询系统_python查询数据库操作系统
- PHP 代码简洁之道 ( PHP Clean Code)(第二部分)
- MySQL:由USE DB堵塞故障引发的思考
- DC.SetMapMode()的用法记录
- 虚拟机里面主要涉及哪些功能,虚拟机管理需要哪些功能
- latex-符号和长度
- 华为手机图标怎么变小_华为手机字太小看不清?那是你不会设置!四种方法让手机显示变大...
- SLAM十四讲ch5 joinMap错误解决
- Day644.Spring框架开发双刃剑 -Java业务开发常见错误
- 电脑登录密码和outlook密码不一致。密码正确却提示密码或用户不正确。
- springboot毕设项目蔬菜种植水肥一体化管理系统70ro1(java+VUE+Mybatis+Maven+Mysql)
热门文章
- SOPA对CIO来说是好是坏?
- 第一章 Redis基础
- 绝地求生信号服务器崩溃,绝地求生游戏崩溃怎么办?更新显示servers are too busy解决方法...
- virtualbox内部连不上问题
- [Python]通过温州大学内网门户登录教务系统
- 安防监控实现之A9主框架的搭建
- Java 文件基本技术 文件概述
- 视差特效的原理和实现方法
- vCenter账号权限问题
- 【学习笔记】--mooc--教学研究的数据处理与工具应用(问卷+问卷星的使用+SPSS的下载、安装、使用、入门)--华南师范大学