SOA是什么

   估计不少人都据说过SOA这个词了,可是不少人仍是不知道到底什么是SOA。开发人员很容易理解为是一个Web Service,可是这绝对不是SOA,那顶多只能算是SOA的一种实现方法。那么,到底什么是SOA呢?最近正在看SOA Source Book,本篇我将介绍一下SOA究竟是什么?若有错误,欢迎指正。html

    SOA是Service-Oriented Architecture的首字母简称,它是一种支持面向服务的架构样式。从服务、基于服务开发和服务的结果来看,向服务是一种思考方式express

服务

  • 是一种有特定结果的可重复业务活动的逻辑表示(例如,检查客户信用度、提供天气预报等)
  • 自包含
  • 能够组合其余服务
  • 对于服务使用者来讲是"黑盒"的

SOA架构样式

  • 基于服务的设计,这些服务表明的是组成企业业务流程的业务活动
  • 服务提供上下文描述(业务流程、目标、规则、策略、服务接口和服务组件),使用服务编排来实现服务
  • 对技术设施提出要求,建议采用开放标准,以便更好的实现可交互性和透明性
  • 实现是基于特定环境的,约束和使能都必须在上下文中进行描述
  • 服务描述和实现须要很好的治理
  • 须要进行验证式的测试以后才能决定这个服务是否好的服务

SOA和EA

    虽然SOA和企业架构(EA)的开始不同,可是如今SOA已经成为企业架构的一个组成部分,因此这里也介绍一下企业架构。安全

  • 企业架构比IT范围大不少
    • 除技术以外的业务操做、财务、人等
    • 它包含除IT以外的技术,例如制造或物流等
  • 组织实现最大化定义的一些改变
  • 对当前操做的基本控制和治理
  • 企业持续改变,带来成本的减小并能提升商业价值

    TOGAF是一个业界企业架构框架,若是想更多了解TOGAF,能够参考我写的企业架构框架-TOGAF v0.2.pdf架构

    因为企业架构范围很大,SOA Source Book值关注企业架构的IT组件:app

  • 企业IT的战略性开发
  • 一个完整的企业系统,而不仅是一部分系统
  • 长期的IT演进,而不仅是知足于短时间目标

SOA

  • SOA并不会增大IT系统的内容,可是会提升它们的可交互性
  • IT系统执行一些被明肯定义和描述业务活动上下文的服务
  • 以前的应用是那种大的、一整块的应用,只有很小的可交互接口,比较勉强的作集成,对交互也不提供保证。而SOA提供一些小的、模块化的服务,这些服务接口被清晰描述和约定。

Overview of SOA

SOA架构维度

  • 成功应用SOA须要具有丰富的知识和技能
  • SOA不能解决全部IT问题,IT架构师必须知道何时以及如何使用SOA
  • SOA将是一个大的投资,是从企业长期战略来考虑的
  • 有时候,技术可能会改变战略,可是业务须要和可能性仍旧是主要驱动力。这也是引入企业架构的缘由,企业架构会依据企业的长期战略来设计IT战略。

SOA和无边界信息流(Boundaryless Information Flow)

  • The Open Group的愿景是Boundaryless Information Flow.

  • 由于SOA能够带来无边界信息流,因此SOA在The Open Group占据了重要地位
  • 使用服务来替代应用

SOA给企业带来敏捷

有三个不一样的方法来实现企业敏捷性框架

  • 服务组合
  • 模型驱动开发
  • 服务虚拟化

架构师可以把这些方法都应用到SOA上,可是它们须要不一样的基础设施的支持,你必须根据需求来选择合适的方案。less

SOA功能和做用

功能ide

做用模块化

基础设施测试

Service

  • 改善的信息流
  • 对外公布的能力
  • 功能组织的灵活性
 

Service Re-use

  • 低的软件开发和管理费用

Service repository

Messaging

  • 配置灵活性

Messaging program

Message Monitoring

  • 商业智能Business intelligence
  • 绩效度量
  • 安全***检测

Activity monitor

Message Control

  • 应用管理策略
  • 应用安全策略

PDPs and PEPs

Message Transformation

  • 数据转换

Data translator

Message Security

  • 数据机密和集成

Encryption engine

Complex Event Processing

  • 简化软件结构
  • 快速适配外部不一样环境的能力
  • 提升可管理性和安全性

Event processor

Service Composition

  • 快速开发新的功能组合

Composition engine

Service Discovery

  • 优化绩效、功能和成本的能力
  • 更容易的系统升级

Service registry

Asset Wrapping

  • 集成现有资产的能力
 

Virtualization

  • 提升可靠性
  • 能够扩充知足不一样要求级别
 

Model-driven Implementation

  • 快速开发新功能

Model-implementation

environment

推荐:你可能须要的在线电子书 

个人新浪围脖: http://t.sina.com.cn/openexpressapp

相关文章
相关标签/搜索