SOA研究开发

先简要介绍一下基本的SOA开发的方法和一些概念.

面向服务的架构(SOA)是一种基于可以重用的服务的,新的开发应用的架构体系. 近年来, 企业界对于SOA的需求越来越急切. 为了满足这样的需求, 一系列的SOA基础架构产品被推出. 主要的厂商 如Oracle, BEA System, IBM都提供了SOA平台产品. 在一个包含各类应用的复杂的IT系统中, 要使用适配器并且在一个符合业务需求的流程中将各类应用串连在一起是一个非常困难的事情, 但是现在的SOA平台将困难转变成了容易.

创建一个SOA的solution一般包含以下几个步骤:
1. 首先, 我们需要将服务创建起来. 这其实就是要用各种adpater或者J2EE或者其他编程语言将原来的应用逻辑变成一种通用的服务方式, 在现在的SOA实现中就是 webservices. 这个过程可以称为 service-enabling. 这个过程往往是开发SOA应用的关键一步, 能否将原来的系统暴露为更容易集成到SOA平台的服务需要掌握各类平台技术的基本概念, 有时甚至需要专业的知识才能enable一个service. 比如说如何使用用于集成mainframe上数据的IMS/TM , IMS/DB adapter.
2. 其次, 需要让这些服务能够互相通信. 这样的通信需要是安全可靠的, 并且服务的通信过程也需要能够带动服务背后的被集成应用. ESB (Enterprise Service Bus) 为服务提供了这样的一个平台. ESB平台需要支持服务及服务之间的消息捕获, 消息传递, 消息的transform等. 可以说ESB提供了一个平台, 让一个企业内部的服务都能注册在这个平台上大家都使用同一种语言web service, 平且提供一些基本的消息传递功能. 同时, ESB要和其他更高层的SOA产品集成在一起, 让更高层的SOA产品能够使用ESB上的服务以串连成更复杂的业务流程.
3. 组成新的业务流程. 这一步需要做的是将服务串连成业务流程, 有点编写业务代码的味道. 用来表示一个业务流程的语言可以是自己定义的, 但以经有标准的Business Process Execution Language(BPEL), 这是一个基于XML的语言. SOA的产品线中必然会有这样的产品来设计及运行基于BPEL或者其他语言的流程代码. Oracle有BPM, BEA有 Aqualogic BPM, IBM WPS.
4. 保护服务. 在一个SOA平台中所有的服务都应该能被很有效的包含起来, 这里说的就是提供security方面的支持. 需要能方便的够制定安全, 审计和日志的策略. 并且包含服务不需要修改服务本身的代码或者设置.
5. 优化服务. SOA平台的另一个重要的功能是能够快捷的monitor服务及其引起的事件. 这样的SOA产品一般称为 Business Activity Monitoring (BAM) . BAM能够提供给用户一个事件收集和聚类的平台, 并且用户还能在这个平台上定义各类图表来展示业务流程的KPI.

Oracle 的SOA产品是现在市场上最完整, 最成熟的SOA平台. 先简要介绍一下Oracle的产品. 可以看到基本涵盖了上面所说的SOA开发过程中的所有领域.
Oracle Jdeveloper 开发工具
Oracle ESB 消息接受和传递平台
Oracle BPEL Process Manager 服务串连
Oracle Web Services Manager 安全管理
Oracle BAM 业务流程级别优化和检测工具.
Oracle Application Server 10g R3 以上产品都部署在该应用服务器之上.



SOA对开发人员来讲
1、如何更快速地创建出更稳定的业务服务组件是关键;
2、要更加深入领会与使用面向接口的组件化开发方式;
3、开发人员重点是保障服务的生命周期,其它的事情让业务开发人员来做。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值