03.osb概览

Post on 05-Dec-2014

448 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

<Insert Picture Here>

Service Bus 11gSOA架构中的服务中介

孟和渠道售前咨询顾问

© 2010 Oracle Corporation 2

<Insert Picture Here>

议程

• Oracle Service Bus 概览

• Oracle Service Bus 功能架构

• Oracle Service Bus 使用场景

• Oracle Service Bus 开发详解

• Oracle Service Bus 经典案例分析

• Oracle Service Bus 最佳实践

© 2010 Oracle Corporation 3

<Insert Picture Here>

议程

• Oracle Service Bus 概览

• Oracle Service Bus 功能架构

• Oracle Service Bus 使用场景

• Oracle Service Bus 开发详解

• Oracle Service Bus 经典案例分析

• Oracle Service Bus 最佳实践

4

从开发的角度看服务集成

应用程序(远程)功能实现

5

集成会随着时间变得非线性复杂Web Services并不能解决该问题

服务使用者

企业服务

应用程序

门户

业务流程

应用程序

应用程序

应用程序

6

工作列表 流程门户 MS Office

MAINFRAME

电子商务 移动设备

点对点架构带来的项目挑战

Oracle Service BusSOA中的服务中介

高速中介 一次连接

松散耦合

动态扩展

交易处理可视化

敏捷架构 企业范围内的可重用

集中化管理

控制风险

降低复合应用开发成本

Oracle Service Bus

ServiceService ServiceService

ServiceService Service Service

BAMCEPEMPOLICY

MANAGERDESIGN

Oracle Service Bus 与其他产品的有机集成

ERP MAINFRAME SERVICES EVENTS

生命周期管理

适配器和B2B

PARTNERSDB

BPEL PROCESS MGRBUSINESS RULESHUMAN WORKFLOW

SERVICE BUSDATA INTEGRATORORACLE SERVICE BUS

Oracle Restricted and Confidential

Oracle Service Bus 产品版本演进融合中间件的有机组成

CY 2008 CY 2009 CY 2010 CY 2011

OSB 10.3 (HDP)

• Oracle branding

• Interop certification

• Native BPEL binding

OSB 10.3.1

• JCA Adapters

• SOA Grid Control

Enterprise Manager

OSB 11gR1

• Unified Container, Install

& Patching

• OWSM Policy Mgmt

• Service Result Cache

• 11g JCA Adapters

• SOA Direct transport

• Svc Lifecycle

Governance with OER,

OSR, and EM

OSB 11gR2

• Templates / Prototypes

• Enhanced EDN

• SCA model in JDeveloper

• Virtual Assembly

• ADF-enabled Web Console

• Fusion Middleware Control

• Hot-Pluggability

• Standards WS-AT, WS-RM

© 2010 Oracle Corporation 10

<Insert Picture Here>

议程

• Oracle Service Bus 概览

• Oracle Service Bus 功能架构

• Oracle Service Bus 使用场景

• Oracle Service Bus 开发详解

• Oracle Service Bus 经典案例分析

• Oracle Service Bus 最佳实践

OSB 功能架构

Unified Security

FTPMQ

Adaptive Messaging

SMTP

Metadata

ReportingSLA Alerts

Content Based Routing

Transformation

Import / Export

Validation

Service Management

Service Virtualization Configuration

Framework

HTTP/S JCA JMS File

Change Center

Monitoring

WSRM Tux EJB

Service Chaining

REST

Authentication Authorization Identity Sign/Encrypt

JDBCAQSAPEBSPSFTJDESBL

Adaptive Messaging不仅仅是Web Services…

Unified Security

FTPMQ

Adaptive Messaging

SMTP

Metadata

ReportingSLA Alerts

Content Based Routing

Transformation

Import / Export

Validation

Service Management

Service Virtualization Configuration

Framework

HTTP/S JCA JMS File

Change Center

Monitoring

WSRM Tux EJB

Service Chaining

REST

Authentication Authorization Identity Sign/Encrypt

JDBCAQSAPEBSPSFTJDESBL

• 解决点对点服务调用的挑战

• 异构消息交流•Web Services

•非基于 Web Services 的消息传递

•混搭的调用模型

•B2B

•遗留通信协定和连接

• 内置支持 TCP/IP socket 连接

• 透过 adapter 可连接套装应用

•可与.NET, Apache, WebSphere MQ 互通

• 加速服务的重用

• 在一个快速改变的基础架构环境中,管理和 ESB 相关的复杂行为和属性

getCustAddress getCustCreditgetCustProfile

getCustAddress getCustCreditgetCustProfile

Oracle Service Bus

ERP.NETWebLogic

File SOAP (Async) Legacy

JMS SOAP (Sync) MQ

服务传输层 Transport SDK

Message Service

桥接异构消息,重用现有服务

• 支持多种协议格式

• Web Services 的处理

• 完全支持相应的Web Services (WSDL, SOAP包) 和non-SOAP包的消息

• 多种通讯方式

• 请求/响应 (同步/异步),异步消息队列,一对多的发布

• 组合方式 (例如: sync-to-async 桥)

应用客户端

服务调用者 Oracle Service Bus 业务服务

EJB

服 务

多协议格式支持

应用客户端服 务

服 务

服 务

服 务

Tuxedo

MQ

Tibco

Socket

WS 标准的支持

多渠道通讯方式

HTTP/SOAP

JMS

FTP

SMTP

File

代理服务

应用客户端

应用客户端

应用客户端

服务的代理

统一的安全架构优化的、可插拔的、灵活的策略配置

Unified Security

FTPMQ

Adaptive Messaging

SMTP

Metadata

ReportingSLA Alerts

Content Based Routing

Transformation

Import / Export

Validation

Service Management

Service Virtualization Configuration

Framework

HTTP/S JCA JMS File

Change Center

Monitoring

WSRM Tux EJB

Service Chaining

REST

Authentication Authorization Identity Sign/Encrypt

JDBCAQSAPEBSPSFTJDESBL

• 传输安全•SSL/Basic Auth

• 消息安全•WS-Policy/WS-Security

•SAML, UserID/Password, X509

•Signing & Encryption

• 基于控制台的安全控制•支持 Web Single-Sign-On

• 基于角色的访问控制

• 策略• 支持 WS-Security & WS-Policy

Authentication Authorization Credential Mappers Audit

Transport Security WS-Security Console Security Policy

Common Security Services

Default Default

PKI

SAML

XACML Default

3rd Party 3rd Party

3rd Party

3rd Party

支持内置安全组件以及

插件形式的第三方安全组件

Security

优化的插件式安全框架

安全管理 - 提供访问的控制

getCustCredit

getCustCreditv1 getCustCreditv2

getCustCreditv1Route

getCustCreditv2

• 松耦合的安全模型,提供身份传递,WS-Security(基于消息的安全)以及传输安全保障

Oracle Service Bus

传输安全 [示例: HTTP Basic Auth]

消息安全 [示例: Signing / Encryption]

传输安全

[示例: HTTP SSL Client Cert]

基于消息的安全

[示例: SAML Token]

Begin

OPSS整体架构图

OWSM利用OPSS及WLS安全框架实现统一安全管理

• 可以把OWSM理解为一个OPSS客户端

• OWSM利用到如下OPSS资源• Key store

• 包括签名和加密keys

• Credential store

• 机密的保存用户名、密码对

• Identity store

• 包括用户帐户和认证源

• Policy Store

• 包括web services权限,是授权检查的来源

服务虚拟化提高企业应用的敏捷性

Unified Security

FTPMQ

Adaptive Messaging

SMTP

Metadata

ReportingSLA Alerts

Content Based Routing

Transformation

Import / Export

Validation

Service Management

Service Virtualization Configuration

Framework

HTTP/S JCA JMS File

Change Center

Monitoring

WSRM Tux EJB

Service Chaining

REST

Authentication Authorization Identity Sign/Encrypt

JDBCAQSAPEBSPSFTJDESBL

• 消息流建模•图形化工具•基于内容的路由,身份认证•混合模式 - Async/Sync, Pub/Sub

•差错处理

• 发现和校验• 自动化的与 UDDI 注册表和存储同步• 部署前,自动校验完整性和是否有冲突

• 格式转换• XML 和 non-XML 间互转•Xquery 或 XSLT

• Service 调用•Java exit (支持POJO)

•Web Services 调用

• 测试控制台• 便于跟踪和查错

丰富的配置环境和建模方式,以消除编码工作

Composition

Transformation Discovery/

Validation

Message

Flow

Modeling

Service

Call-out

Test

Browser

丰富的组装环境

服务管理嵌入式的可视化监视和控制

Unified Security

FTPMQ

Adaptive Messaging

SMTP

Metadata

ReportingSLA Alerts

Content Based Routing

Transformation

Import / Export

Validation

Service Management

Service Virtualization Configuration

Framework

HTTP/S JCA JMS File

Change Center

Monitoring

WSRM Tux EJB

Service Chaining

REST

Authentication Authorization Identity Sign/Encrypt

JDBCAQSAPEBSPSFTJDESBL

信息仪表板 差错监控和性能报告

通过ESB汇总

监控 监控告警

管理 SLA 告警 基于操作统计的报警

基于消息管道操作中的报警

报表 提供缺省的汇总统计

支持自定义报表统计

开放接口JMX 接口

SNMP 通过内置的性能和监控优化,来服务确保服务质量

ReportingSLAsMonitoring Dashboard Open Interfaces

Management内置的服务管理

© 2010 Oracle Corporation 24

<Insert Picture Here>

议程

• Oracle Service Bus 概览

• Oracle Service Bus 功能架构

• Oracle Service Bus 使用场景

• Oracle Service Bus 开发详解

• Oracle Service Bus 经典案例分析

• Oracle Service Bus 最佳实践

Service Bus主要使用模式

共享的服务和事件

重用 & 可视性• 服务虚拟化• 协议转换• 消息模式• 统一策略管理

可扩展的集成及面向服务架构• 分布式缓存

• 优先级控制

• 并行处理

• Throttling

• 服务池化

• 可靠的消息机制

SOA 基础架构及运行管理

Oracle Service Bus

Portal

Independent Lifecycle

Co

he

ren

ce

caching

虚拟化实现极大的敏捷性以订单处理流程为例

Web-basedconsole

pooling

Ora

cle

Se

rvic

e B

us

BusinessService

Proxy

virtualization

IDE

build

deploy

SOAP

transport switching

JMS

OSB使用场景之一访问目标透明(Location Transparency)

• OSB可以将服务与位置变化隔离

HostA

New Hire

ProcessInitialize Benefits

Service

Initialize Benefits

Service

HostB

Oracle Service Bus

Route to

HostB

SOAP SOAP

说明:应用访问的服务接口和服务提供者的位置无关

OSB使用场景之二向后的兼容性(Backwards Compatibility)

Oracle Service Bus

Process Order

Service

Customer

Portal Transform

Message

1.0

2.0

<1.0>

CSR App<2.0>

SOAP SOAP

• 隔离服务的约定/接口(contract/interface) 的变化

说明:被访问服务接口变化不影响原有应用的访问。新应用访问新的服务接口,原有应用透明使用旧的服务接口

OSB使用场景之三格式转换(Service Enablement)

• 转换消息的格式,以便与服务接口吻合

• 允许多协议/消息格式的服务调用

Oracle Service Bus

Transform Payroll Service

JMSExpense

Reimbursement

Process

SOAP

Submit Expense

Report Service

FTP

Transform

Transform Check Order

Status Service

SOAPInventory

Management

AppJMS

说明:屏蔽协议和数据格式差异。OSB提供虚拟化后的协议接入和消息输入,进行信息交互的应用之间完全透明

OSB使用化场景之四动态路由(Dynamic Routing)

• 通过业务规则,决定如何访问目标服务

Oracle Service Bus

Title =

Manger?

New Employee

ServiceSOAP

New Manager

ServiceTransform

HR PortalSOAP

说明:OSB提供动态路由能力,根据输入的消息内容路由到不同的服务应用上,对访问者而言只对应单一访问接口

OSB使用场景之五丰富服务访问的消息(Message Enrichment)

Oracle Service Bus

Get Customer

History Service

Call

Service

Transform

Message

Rate Quote

Service

Insurance

Portal

...

<Customer

History>

...

• 通过调用其他服务,根据响应内容更新消息

说明: OSB 借助服务调用、JAVA方法调用、EJB调用及消息格式转换等能力提供消息组装功能,屏蔽了信息交换的应用之间比较大的消息差别。

OSB使用场景之六服务编排(Service Orchestration)

• 组织已有服务,合成新服务

Oracle Service Bus

1

2 3

4

Validate

Order

Service

Check Price Service

Account Validation

Service

Check Inventory

Service

SOAP

Purchase

Order

Process

SOAP

说明:OSB的消息流机制提供一定的服务组装能力,根据业务需求可组装出新的服务,简化应用对服务的调用

© 2010 Oracle Corporation 33

<Insert Picture Here>

议程

• Oracle Service Bus 概览

• Oracle Service Bus 功能架构

• Oracle Service Bus 使用场景

• Oracle Service Bus 开发详解

• Oracle Service Bus 经典案例分析

• Oracle Service Bus 最佳实践

SOA 架构拓扑图

业务人员

架构师

步骤1: 架构设计

导出配置

• WSDL

• XML

Schemas

• Policies

Proxy Pipeline

OSR

SOA 设计人员

步骤2: 配置服务OSB

ALSB

Production

OSR

ALSB

Staging

IT

Operations

步骤3: 测试和部署

ALSB

Development

步骤4: 监控和管理

服务监控管理

ALSB3rd Party

HP Open View, BMC

性能监控

• JMX

• SNMP

• Reporting

OSB 开发、部署及管理流程

© 2010 Oracle Corporation 35

Worklist Portal MS Office

MAINFRAME

Online Shopping

MobileDevices

OSB开发总览代理服务和业务服务带来的敏捷性

ORACLE SERVICE BUS

ApplicationInstance 1

ApplicationInstance 2

ApplicationInstance 3

Proxy Services:

Replaces point-to-point with a virtual endpoint

Business Services:

Logical endpoint connected to multiple service endpoints

Clients

Service Endpoints

© 2010 Oracle Corporation 36

<Insert Picture Here>

议程

• Oracle Service Bus 概览

• Oracle Service Bus 功能架构

• Oracle Service Bus 使用场景

• Oracle Service Bus 开发详解

• Oracle Service Bus 经典案例分析

• Oracle Service Bus 最佳实践

信贷处理应用

采用SOA的设计模式,将客户、经纪人和FF自身信贷应用,通过流程有机整合BPM用于流程设计,统一的经纪人访问门户, Oracle DSI用于整合唯一数据视图,而 OSB用于动态的服务整合和消息路由

消除点对点的代理和客户信贷应用的集成业务模式变化迅速,要求基础架构能够包容变化

机会 & 挑战

基于OSB的解决方案

期望的效益

方便的服务配置和变化管理以适应新业务快速为经纪人和用户提供新种类服务为经纪人和用户提供更加可视化的信贷处理流程降低信贷处理的支持成本

© 2010 Oracle Corporation 38

<Insert Picture Here>

议程

• Oracle Service Bus 概览

• Oracle Service Bus 功能架构

• Oracle Service Bus 使用场景

• Oracle Service Bus 开发详解

• Oracle Service Bus 经典案例分析

• Oracle Service Bus 最佳实践

差错处理

配置服务的SLA

Retry Count:表示服务不可用时,重试的次数。0 表示不尝试,

而其他正数表示尝试的次数

Retry Interval:表示两次重试之间的时间间隔,以秒为单位

在Proxy服务配置时,定义Error Handler (可以是服务级别,或服务中的组件级别,Stage Action或Route Node)

40

服务结果缓存最新特性之可预知的扩展性

Process Flow /

Orchestration

遗留系统

服务使用者

服务提供者

P

B备份节点

主节点Get / Put (Cachekey)

服务数据

Coherence 数据网格

OSB

Result

Cache

Ora

cle

Serv

ice B

us

检查缓存

如果服务结果在缓存中没有命中,则调用服务并缓存

Side Cache Pattern

41

集成成功秘诀从简单做起,快速扩展

时间

业务

价值

项目部署

OSB1 OSB2

OSB3

企业级部署

从单个域的项目开始做起

跨域的复合应用

• Start Small

• Build

composite

Apps

•Demonstrate

business value

• Build Chasse

• Leverage

lessons learned

42

扩展不仅仅是考虑性能多维度因素

• 服务的数量

• 服务使用者的数量

• 开发者的数量

• 高可用性

• 可视化

• 管理和控制ESB1 EAB2

ESB3

企业级部署

跨域的复合应用

高可靠性/负载均衡的实施

ESB 可配置成群集或多个独立的Domain,通过代理在前端进行负载分发

负载均衡的选项作为业务服务配置的一个组成部分

HTTP/SOAP

Client

服务总线B

OSB

服务总线A

OSB

负载均衡设备

(Apache/F5)

URI Y

URI X

客户访问端(HTTP/SOAP)

服务总线B

服务总线A

负载均衡设备

(Apache/F5)

后台系统

后台系统

URI 1

URI 2

URI 2

URI 1

OSB集群工作原理示意

45

服务生命周期管理设计时和运行时

• 通过SOA治理进行端到端的服务生命周期管理

• 通过OWSM代理进行统一的策略编写、指定和执行

• 服务级的指标统一汇聚到企业管理器控制台(可以是多个域)

开发工具

IDE, CVS, Ant etc

RegRep

11g Service Infrastructure

BusinessRules

Mediator

Policy Enforcement

BPELHuman

Workflow

Oracle Service Bus

Common JCA-based connectivity infrastructure

设计时 运行时

A. 浏览、使用

B. 发布(获取)

C. 部署到不同的环境

D. 运行时查询 (闭环)

问&答

47

使用Coherence进行服务数据缓存非常易用,只需简单勾选设置

Result Cache is an implementation of Side Cache pattern

业务服务

是否缓存服务数据?

设置缓存Token

设置Time To Live

top related