2014-01-12 Created By BaoXinjian


SOA这个名词,几年前就经常在网上看到或者在一些讲座中听到,但自己真正比较“近距离”接触“SOA”,还是在去年的“中国IT精英年会”上,当时IBM大中华区的老总大谈IBM 的SOA,

BEA公司(当时还没被Oracle 收购)也讲了很多SOA的案例,SAP公司的首席技术官张侠也讲了有关SAP的为了适应形式需要而发布的- Netweave。

从那时才开始对SOA有一些具体的了解,最近由于工作的需要,买了一些SOA的书籍,并在网络上阅读了大量的SOA资料,

对原来感觉很模糊的SOA,忽然有了一些清晰:原来自己做过的很多项目中,已经做了很多接近“SOA”的工作了,如给某集团公司做大型Oracle ERP系统规划,架构和实施的时候,

采用了Oracle Portal以及SSO 单点登陆到BIEE 系统,OA以及Oracle ERP系统等等,

并且我们的生活中类似SOA”也到处存在啊,我们新房子装修的时候,提前在门口的宽带进口那准备了一个“HUB(集线器)”,并每个房间都布置了网线和RJ45的面板,以方便以后在任何一个房间都可以热插拔“Services“.


1. Oracle EBS(电子商务套件)R12版本产生背景

Oracle E-Business Suite(电子商务套件)Release12版本是Oracle 公司在2007年1月份刚推出不久的一个全新版本,

和原来一直沿用了近10年的Oracle EBS(电子商务套件)11i版本在技术架构了做了很大的改动,估计也是为了适应,现在IT网格技术,SOA以及云计算这些新的IT理念的需要而产生的.

(1). 根据Oracle 官方的资料,Oracle 公司的对Applications 的策略:

  • “Complet”是一种“完整的综合性行业组合”,这样可以体现更多价值,从而减少复杂性,而针对Oracle E-Business Suite(电子商务套件) 来说就是“更广阔的应用套件”
  • “Open”是一种“开放的、基于标准的架构”,其实就是说的可以SOA,对应产品就是Oracle SOA Suite, 这样客户可以有更多选择,并降低风险
  • “Integrated”是“紧密集成的设计”,从而应用更加灵活、更加节约成本支出,针对Oracle E-Business Suite(电子商务套件) 来说就是指AIA For Oracle E-Business Suite

(2). Oracle E-Business Suite(电子商务套件)Release12 就是在Oracle 公司这样的大的策略下研发出来一个版本,应该说这个版本集合了现在IT发展主流的最新的技术和理念

2. Oracle EBS(电子商务套件)和原来的11i上技术架构改变的对比和结果分析

(1). 两个版本技术架构对比

Oracle E-Business Suite(电子商务套件)11i

Oracle E-Business Suite(电子商务套件)Release12

(2).两个版本在组件上对比

(3). 技术架构对比结果分析

在的架构上Oracle EBS R12 还是采用了3层架构:Client – Application – Database ,只不过在下面几个地方做很改动(只是说技术架构上的)

  • Client 由原来的JInitiator插件换成了JDK/JRE 版本1.5.0代替了原来JDK1.3.1or 1.4.1
  • Application部分充分利用了Oracle 中间件中新的版本Oracle AS 10g,功能性能以及安全等方便都得到很大的提高
  • Database 部分也是利用的Oracle 最新的版本Oracle 10gR2,去掉了大概1000个indexes,优化性能得到很大提高,DML 的性能也得到很大的提高, 在数据压缩,PL/SQL 引擎以及优化策略以及新的功能方面使性能得到了极大的提高
  • R12中首次使用Oracle JDeveloper 10.1.3 ,利用这个强大的工具,使开发更简单,更有效
  • 环境变量也做了很大的改变,首次使用 INSTANCE_TOP 在Release12用来管理configuration和log 文件

3.Oracle E-Business Suite(电子商务套件)Release12的特性

根据Oracle 公司官方给合作伙伴发布的资料:Oracle E-Business Suite(电子商务套件)Release12被称为“The Global Business Release”,并且具有如下三个特性

  • ÄThink Globally
  • Ä Work Globally
  • Ä Manage Systems Globally

(1) Global 的涵义主要体现在如下方面:

  • Global IT Excellence
  • Global Talent Management
  • Global Costomer&Master Data Management
  • Global Financial Management
  • Global Sourcing&Procurement
  • Global Supply Chain Management

(2). Oracle E-Business Suite(电子商务套件)Release12整体特性

4.技术架构以及Oracle EBS R12新特性分析结果总结

通过以上Oracle E-Business Suite(电子商务套件)技术架构和Oracle公司对Applications研发战略上对比,

不难看出Oracle公司的Oracle E-Business Suite(电子商务套件)已经经历大幅度的再设计,以便支持 SOA,部分成果在其11i.10 版本开始已经初步体现。

一些关键的设计变更包括:使服务接口与服务实施分离;充分利用 AS10g 为核心基础架构提供其 J2EE 运行时、注册及存储库服务。

Oracle 指出,其 EBS 还包括一个集成存储库,用于访问它的所有服务接口,以及 800 多个预配置的“务事件”、150 条 OAG“消息”及 Web 服务和行业专用协议支持。

这些更改有助于简化服务查找,并实施和集成附加模块及其它用户定义服务变得更加容易。

Oracle E-Business Suite(电子商务套件)Release12 在这些方面做到了更完善。


前面从从技术架构上以及Oracle 公司的对Applications策略上,还有Oracle EBS R12 新特性上,

可以看出ORACLE (其实Oracle公司早在11.10版本)已经对和适应SOA提前做了很多,把很多的应用模块已经封装成服务,并通过Oracle E-Business Suite(电子商务套件)已经集成好了。

而Oracle E-Business Suite(电子商务套件)和SOA有什么关系,或者说怎么样才能把这两个东西结合到一起呢.

1. Oracle E-Business Suite(电子商务套件)中”Integration Resoitory”职责

(1). 其实早在Oracle EBS 11i.10就有了”Integration Resoitory”这个职责,就是为了和SOA集成

(2). 在Oracle E-Business Suite(电子商务套件)登陆画面中,以sysadmin/password用户登录进去,可以看到一个“Integration Resoitory“,进去后出现如下所有针对SOA的Public Integration interface

(3). “Integration Resoitory ”是Oracle E-Business Suite完整的一部分

(4). “Integration Resoitory ”已经集成了SOA所需要的很多协议

  • PL/SQL APIs
  • Concurrent Programs
  • XML Messages
  • Business Service Objects
  • Business Events
  • Interface Views
  • eCommerce Gateway Messages
  • 超过2500+services可以被集成

(5).以上所说的都是Oracle E-Business Suite已经集成好的所有接口,他还提供二次开发的一些东西,也可以封装成服务,具体的流程如下图:

2. Oracle E-Business Suite SOA Adapter

(1). Oracle E-Business Suite中只是提供了能和SOA进行集成的“Services”,但还不能直接和真正的SOA连接到一起的,Oracle 公司有Oracle E-Business Suite SOA Adapter这个产品就起这个作用

(2). Oracle E-Business Suite SOA Adapter架构介绍

3. Oracle E-Business Suite(电子商务套件)最后封装成能够和SOA热插拔的WebService

(1). 针对SOA概念中的“Service Broker”,在Oracle E-Business Suite(电子商务套件)对应的是”Integration Repository”

(2). Service Provider”, 在Oracle E-Business Suite(电子商务套件)对应的就是“Oracle E-Business Suite Adapter”

(3). 通过Adapter封装成可以和SOA热插拔的”WebService”


Oracle SOA 的脚步也比IBM或者原来的BEA慢了很多,别的厂商已经发展的比较成熟了,

Oracle 才在2007年推出自己的Oracle SOA Suite产品,在技术上Oracle 公司很早也研发了很多,但市场上并不是很买帐,

但2008年Oracle 把BEA收购以后,不仅在技术上把BEA的先进的东西全部拿来融合到自己的新产品中去,而且据说在原来的BEA客户也大部分都跟到了Oracle 公司下面。

所以,Oracle 公司新推出的Oracle SOA 套件,完全可以和IBM等这些发展SOA比较早的公司抗衡,并且据业界人士分析,Oracle Fusion Software将Oracle成为这一领域最全面的SOA软件供应者。

1. Oracle SOA Suite 的构成

(1). Oracle SOA套件由Oracle备受欢迎的单项最佳技术组成,包括

  • Oracle JDeveloper 10g:一个全面的SOA 集成开发环境,用于创建应用和组合应用,它也作为Oracle SOA 套件中所有组件的统一工具集
  • Oracle BPEL流程管理器:用于Web服务组合的第一个本机BPEL(业务流程执行语言)引擎使你能够设计、定义和执行业务流程
  • Oracle Web服务管理器:单一控制台以确保Web服务的安全并对其进行管理
  • Oracle业务规则引擎:支持对业务规则进行灵活管理
  • Oracle业务活动监控:提供实时的业务运营洞察力
  • Oracle企业服务总线:一个基于标准的产品,它将现有IT系统和业务伙伴作为一套服务连接起来
  • Oracle服务注册中心:最佳的支持 UDDI v3规范的注册中心

(2). Oracle SOA套件支持的中间件平台

  • Oracle融合中间件
  • IBM WebSphere
  • BEA WebLogic(现在基本上都融合到Oracle 的融合中间件了)
  • Jboss应用服务器

2. Oracle E-Business Suite和Oracle SOA Suite完整的集成


1. SOA 设计原则

在 SOA 基础中,核心基础架构和支持元素本身应以服务形式进行设计和使用,这些元素可以解决一些关键问题,如安全性、管理和监视、数据和访问服务、事件和消息处理服务及类似的其它服务.由于这些功能必须处于“一直开启”状态,最好将它们构建在稳固的运行时功能中

  • 服务查找.提供查找和自动配置可用服务及简化服务管理的机制
  • 服务安全性.管理身份和安全性策略和执行,确保正确的数据、消息和服务访问
  • 面向服务的管理.一种根据业务规则和服务级别协议 (SLA) 在分布式网络环境中定义、执行和监视系统策略的工具
  • 服务集成.简化消息处理、服务支持接口和信息向常见格式的转换
  • 事件驱动的架构 (EDA).用消息传递触发服务调用
  • 服务自动配置.为了实现动态网络环境,核心系统及应用部署基础架构以服务自动配置、负载平衡及移至设备或服务器范围之外的受管运行时服务为针对目标
  • 服务呈现.处理将服务呈现给各种“客户机”时的转换,访问点通常是企业门户或其他设备
  • 服务开发和生命周期管理.用于设计、开发和管理针对 SOA 环境的服务控件的

2. 结合IDC 的SOA 设计原则说明Oracle SOA Suite

(1). 在Oracle融合中间件产品组合与BEA产品的整合上,已经取得了里程碑式的关键进展,而甲骨文公司不久前发布了Oracle融合中间件战略和产品路线图.甲骨文已经加快了对SOA(服务导向架构)的提供,SOA融合了包括Oracle WebLogic Server, Oracle WebLogic Application Grid, Oracle Business Process Management和 Oracle WebCenter Suite等Oracle和BEA产品的强大功能。

(2). 通过为SOA资产和它们的从属物提供唯一来源的真实信息,Oracle 企业储存库为管理整个SOA生命周期提供了坚固的基础.

3. IDC的报告中,针对中国企业的SOA分析

(1). 中国企业有独特的SOA 关键任务,中国企业不象美国等这些企业,对已有系统的功能进行提取和包装并形成了标准的服务,中国企业的SOA架构时,要对原有系统依靠服务来切割,或者推倒重来,而新建系统将采用标准的小颗粒构件构造流程级别的服务构件。

(2). 国际上已经出现的SCA/SDO面向构件技术的的标准,这将是中国企业实现SOA架构的基础. 面向构件技术的积极意义在于,SOA 服务可以用构件来建造,SOA 服务本身的管理和组装也是一个面向构件的过程

(3). 构造服务和整合服务是成功实施SOA 两个互补的重要方面。只有构建大量的SOA 服务之后,方可通过ESB(企业服务总线)对服务的注册与管理,从而被检索、发现并使用。 基于构件技术的SOA 服务构造和基于ESB 产品的服务整合是成功实施SOA 架构的互补的两方面

4. 最后,再看一下Oracle 公司Applications更长远的发展策略

把现在的所有的应用等集成到Oracle 正在大力发展的“Oracle Fusion Middleware”,后面将有新的Applications 版本出现,并可以扩展和升级

Thanks and Regards

转载:grabsun - http://www.grabsun.com/article/2012/1061453.html

ERP_Oracle Erp发展趋势基于SOA电子商务方案的更多相关文章

  1. 基于AgileEAS.NET企业应用平台实现基于SOA架构的应用整合方案-开篇

    开篇 系统架构的文章,准备在这段时间好好的梳理和整理一下,然后发布基于AgileEAS.NET平台之上的企业级应用架构实践,结合具体的案例来说明AgileEAS.NET平 台之上如何进行系统的逻辑架构 ...

  2. 基于SOA分布式架构的dubbo框架基础学习篇

    以需求用例为基,抽象接口,Case&Coding两条线并行,服务(M)&消费(VC)分离,单元.接口.功能.集成四层质量管理,自动化集成.测试.交付全程支持. 3个大阶段(需求分析阶段 ...

  3. 面向服务体系架构(SOA)和数据仓库(DW)的思考基于 IBM 产品体系搭建基于 SOA 和 DW 的企业基础架构平台

    面向服务体系架构(SOA)和数据仓库(DW)的思考 基于 IBM 产品体系搭建基于 SOA 和 DW 的企业基础架构平台 当前业界对面向服务体系架构(SOA)和数据仓库(Data Warehouse, ...

  4. 基于SOA的高并发和高可用分布式系统架构和组件详解

    基于SOA的分布式高可用架构和微服务架构,是时下如日中天的互联网企业级系统开发架构选择方案.在核心思想上,两者都主张对系统的横向细分和扩展,按不同的业务功能模块来对系统进行分割并且使用一定的手段实现服 ...

  5. 基于 SOA 的组件化业务基础平台

    业务基础平台是业务逻辑应用和基础架构平台之间的一个中间层,解决 “应用软件的业务描述和操作系统平台.软件基础架构平台之间的交互与管理问题”.操作系统平台解决了“应用软件系统与硬件之间的交互与管理问题” ...

  6. 基于SOA的银行系统架构

    Part-1  [简述] 1.通过引入面向服务架构(SOA),企业服务总线(ESB),适配器(Adapter)及面向构件等技术,尝试打造一个统一业务流程服务平台,实现面向流程的服务集成. 2.传统银行 ...

  7. 基于SOA的组件化业务基础平台[转]

    转自https://www.ibm.com/developerworks/cn/webservices/1111_xiaojg_soa/index.html 业务基础平台是业务逻辑和基础架构平台之间的 ...

  8. JAVAEE——宜立方商城02:服务中间件dubbo、工程改造为基于soa架构、商品列表实现

    1. 学习计划 第二天:商品列表功能实现 1.服务中间件dubbo 2.工程改造为基于soa架构 3.商品列表查询功能实现. 2. 将工程改造为SOA架构 2.1. 分析 由于宜立方商城是基于soa的 ...

  9. 【转】谈基于SOA的应用系统设计和开发

    注:在网上看到这篇文档,觉得写得很好,清晰实用.该博客其它文章也写得不错     地址:http://blog.sina.com.cn/s/blog_493a84550101gswn.html 现在对 ...

随机推荐

  1. php支付接口,代付、感悟

    支付接口: 1.验证用户登录信息 2.验证参数.用加密串来匹配,开信息是否被篡改 3.如果有必要可以仿造购物城 建立购物车列表 4.建立和请求方的关联表 5.进行订单生成.支付流程.各种判断.验证. ...

  2. 查看PHP的配置信息

    查看PHP的配置信息其实一个函数就搞定了. 首先在服务器的根目录建立phpinfo.php文件. 然后打开此文件输入以下内容 <?php phpinfo(); ?> 保存此文件之后在浏览器 ...

  3. 黑马程序员——JAVA基础之构造函数,构造代码块

    ------- android培训.java培训.期待与您交流! ---------- 构造函数特点: 1.  函数名与类名相同 2.  不用定义返回值类型 3.  不可以写return语句 构造函数 ...

  4. 多网卡 指定网卡到指定IP

    route add -net 1.2.3.0/24 gw 网关 route add -host 目标IP dev eth1route add -host 目标IP gw 网关

  5. javascript零散要点收集

    1.this永远指向函数对象的所有者 2.ECMA-262 把对象(object)定义为“属性的无序集合,每个属性存放一个原始值.对象或函数”.严格来说,这意味着对象是无特定顺序的值的数组. 3.pr ...

  6. tomcat 源码解析

    how_tomcat_works https://www.uzh.ch/cmsssl/dam/jcr:00000000-29c9-42ee-0000-000074fab75a/how_tomcat_w ...

  7. How can I create an executable JAR with dependencies using Maven?

    http://stackoverflow.com/questions/574594/how-can-i-create-an-executable-jar-with-dependencies-using ...

  8. DDD, MVC & Entity Framework

    https://digitalpolis.co.uk/software-thoughts/ddd-mvc-entity-framework/ Data Points - Coding for Doma ...

  9. 大白话系列之C#委托与事件讲解(一)

    从序言中,大家应该对委托和事件的重要性有点了解了吧,虽然说我们现在还是能模糊,但是从我的大白话系列中,我会把这些概念说的通俗易懂的.首先,我们还是先说说委托吧,从字面上理解,只要是中国人应该都知道这个 ...

  10. C#Linq中的Union All/Union/Intersect和Top/Bottom和Paging和SqlMethods,skip,take,takewhile,skipwhile,编译查询等

    我们继续讲解LINQ to SQL语句,这篇我们来讨论Union All/Union/Intersect操作和Top/Bottom操作和Paging操作和SqlMethods操作 . Union Al ...