前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >什么是SOA

什么是SOA

作者头像
小柒2012
发布2018-04-13 15:53:29
1.3K0
发布2018-04-13 15:53:29
举报
文章被收录于专栏:IT笔记IT笔记

讲在前面的话: 若企业缺乏对服务变更的控制和规则,那么一个服务在经过几个项目之后,就很有可能被随意更改成多个版本,将来变成什么样更是无法预测。久而久之,降低了服务重用的可能性,提高了服务利用的成本。 服务治理在SOA实施之初的作用不明显,甚至在一定程度上影响到项目的进展,但随着SOA实施深入开展和服务数量的增加,其作用会越来越明显。正如SOA架构通过引入了多个层级,在一定程度上牺牲单笔服务调用的效率却换来架构的灵活性一样。

什么是SOA 面向服务的体系结构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约(规范)联系起来。 SOA的定义 面向服务架构,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。

SOA的优势 对 SOA 的需要来源于需要使业务,让服务变得更加灵活,以适应业务中的改变。更好的实现业务驱动。 SOA具有低耦合性特点,业务伙伴对整个业务系统的影响较低。

SOA的特性 暴露API,可从企业外部访问 随时可用 松散耦合 可重用的服务(与重组服务) 标准化的服务接口 精确定义的服务契约 ...

SOA四大支柱 团队合作 理念共识 纪律规范 范围边界

SOA八个原则 标准化服务合同原则 服务松散耦合原则 服务的抽象原则 服务可重用性原则 服务自治原则(服务合同定义良好功能边界,避免服务重叠) 服务无状态原则? 服务可发现原则 服务可组合原则

服务治理的重要性 服务是SOA的核心。按其愿景,在新项目设计实施过程中,项目团队通常会面临如下问题: 1.企业有无服务目录,服务目录在哪里? 2.哪些服务可在新项目实施中重用? 3.需要新开发哪些功能,这些功能是否要封装成服务,供其他应用使用? 4.当新系统所需要的某一功能已经存在于某一现有系统之中,但是并非以服务形式出现时,是否要对它进行封装,如何封装? 5.服务的调用是否必须经过企业服务总线(ESB、dubbo_zk),何种情况下必须经过ESB,何种情况下不需要? 6.当某个现有服务功能部门满足某项需求时,如何对服务进行改造和版本控制? 7.待开发的新系统是对某个旧系统的升级,那么旧系统提供的服务何时中止,用新系统中的服务替换,还是将服务升级成另一种形式? 8.服务来自于哪个系统,被哪些系统所用? 9.服务由谁负责管理和维护? 10.服务可被哪些人或角色有权限访问?

如何服务治理 1、建立服务仓库 2、制定治理规范 服务定义(服务的范围、接口和边界) 服务部署生命周期(各个生命周期阶段) 服务版本治理(包括兼容性) 服务变更(启用和退役) 服务注册中心(依赖关系) 服务监视(进行问题确定) 服务所有权(企业组织) 服务测试(重复测试) 服务安全(包括可接受的保护范围)

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016-09-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
微服务引擎 TSE
微服务引擎(Tencent Cloud Service Engine)提供开箱即用的云上全场景微服务解决方案。支持开源增强的云原生注册配置中心(Zookeeper、Nacos 和 Apollo),北极星网格(腾讯自研并开源的 PolarisMesh)、云原生 API 网关(Kong)以及微服务应用托管的弹性微服务平台。微服务引擎完全兼容开源版本的使用方式,在功能、可用性和可运维性等多个方面进行增强。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档