SOA-面向服务架构

背景:
  许多企业和政府部门使用不同技术,建设了不同规模的应用系统,造成了”信息孤岛”现象,即我拥有数据,但和其他部门的数据不一致,难以整合,此外还包括一些遗留的系统,要想整合也不是件容易的事;另一方面,如果业务需求不断变化,传统的研发是对业务需求直接映射,大大降低了系统的灵活性,可以把业务进行适当的抽象通过服务的方式满足系统的需求,由此出现SOA面向服务的体系结构,提倡将不同应用程序的业务功能封装成“服务”并宿主起来,通常以接口和契约的形式暴露并提供给外界应用访问(通过交换消息),达到不同系统可重用的目的。

SOA的好处
 1. 松耦合:由于服务自治,有一定封装边界,服务调用交互是通过发布接口。这意味着应用程序不感兴趣的服务如何被实现。
 2. 位置透明:服务的消费者不必关系服务位于什么地方。
 3. 可在异构平台间复用。可以将遗留系统包装成服务。
 4. 便于测试,能并行开发,较高可靠性和良好可伸缩性。
 
SOA的一些定义
  SOA面向服务的体系结构,是构造分布式系统的应用程序的方法。它将应用程序功能作为服务发送给最终用户或者其他服务。它采用开放标准、与软件资源进行交互并采用表示的标准方式。
  SOA是一个范式,用于组织和利用可能处于不同所有权范围控制下的分布式系统

SOA的核心是服务
  服务就是经过封装可重复利用的功能,通过建立可组合、可重用的服务体系加快项目开发进程,减少IT 业务冗余。

IBM 的 SOA 参考架构

这里写图片描述

  其中 企业服务总线 ESB 是SOA系统中的核心基础设施,什么是ESB?严格来说ESB不是某一产品,而是一种中间件模式,是一个应用集成、协调资源和操纵信息的框架。SOA关注的是服务的整个生命周期,而ESB关注的是服务的整合,类似于服务中介, ESB的核心功能可分为路由服务、消息协议转换以及数据传输三大模块
   路由服务:消息路由,在服务之间路由消息,控制消息的存储和分发。 基于内容路由服务根据输入(出)数据内容的内容以确定需要在哪里对输出进行路由; 基于主题的路由,可有效的实现消息的发布和订阅,实现数据和应用之间的松散耦合; 点对点路由服务
   消息协议转换: 分为协议转换,转换请求方和服务方的协议,解决异构系统由于通信协议而不能互联互通的问题; 消息格式转换(XML、File等),解决异构系统之间由于数据描述方式不同而不能互联互通的问题
   数据传输:执行数据的传输或接收,消息通讯服务 MQ,消息中间件; 同步或异步通信; 可靠传输-断点续传等; 事物控制-发送方只有成功发送后才能删除队列中的消息,否则回滚事物,接收方只有成功接收或所有订阅者确认消息后,才删除持久化存储的消息;数据压缩及加密解密、序列化/反序列等; 发送接收传输服务JMSHTTP/HTTPSSocketRMIWebServices等,与主流中间件集成

  接下来简单模拟一下数据交换的实现,实现目标是一个分布式、可扩展节点的、不同关系型数据库之间的数据共享

http://blog.sina.com.cn/s/blog_493a84550100j5v7.html
http://blog.csdn.net/dinglang_2009/article/details/44516599

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值