Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository...

71
<Insert Picture Here> Oracle SOA 技术交流 Nu Zhang, SeniorSales Consultant Oracle, GuangZhou

Transcript of Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository...

Page 1: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

<Insert Picture Here>

Oracle SOA 技术交流

Nu Zhang, SeniorSales Consultant

Oracle, GuangZhou

Page 2: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

<Insert Picture Here>

议程

• SOA面临的挑战

• Oracle Service Bus技术特点

• 性能数据参考

• 应用场景

• 总结

Page 3: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

CFO

业务线

开发团队 架构小组 架构小组 IT

联络 开发团队

CTO 各业务部门

IT 领导 应用开发处

处长

CIO

业务线

COO

CEO

业务线 业务线

IT 成了业务线 (LOB) 需求的漏斗

Page 4: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

IT IT IT

CFO

业务线 业务线

COO

CEO

IT只是将业务需求转换成一堆互不相连的应用系统

Page 5: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

项目需求

互不相连的应用竖井

倚赖传统 EAI 技术

做点对点连接

业务部门

IT

传统项目交付方式

应用竖井

传统的需求管理:面向应用,整合是后来根据业务集成需要才考虑的

Page 6: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

IT架构的无序蔓延,变得难以控制

Page 7: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

电视和电脑体系结构上最大区别?

• 修电脑和修电视

• 电脑可以升级,电视能升级么?

电脑

电视机

Page 8: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

Service-Oriented

Architecture

SOA是一种架构方法,它将企业应用中分散的功能组织成为基于标准、松耦合、可互操作的业务服务,这些服务可以很容易的在异构环境企业范围被共享、重用和组合,从而创建基于不同需求的复合应用,快速地满足业务需求。

SOA定义

Page 9: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

Infra

stru

ctu

re S

erv

ice

s

Information and Access Services

Composite Applications

Presentation Services

Shared Business Services

Se

rvic

e M

an

ag

em

en

t

Se

rvic

e B

us

Co

mm

on

Se

rvic

es

应用

1 2 3 4 5 6

7 8 9 10 11 12

服务目录

A

B

C

D

E

F

G

1

1

2

2

3

3

1 3 4 5

4

5

6

6

7 5

7

2 7 8 9

9

8

10 11

10 11

7

F G

8 12 10

3 11 9

12

1 7

11 9

IT费用随着项目时间的曲线

复合应用

逐个项目和应用实现服务的方法使得避免 “big-

bang” 失败,

允许按照IT

路线修正,

并且有更好的成本控制

SOA为企业服务带来革命性变革

Page 10: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

ESB的核心价值

• Enterprise Service Bus is the integration backbone for

an service network.

• Service Intermediary

• Heterogeneous

• Loose-coupled

• Standardized

• Share/Reuse

• Manageable

• Scalable

Page 11: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

<Insert Picture Here>

议程

• SOA的挑战

• Oracle Service Bus技术特点

• 性能数据参考

• 应用场景

• 总结

Page 12: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

Develop

Retire Services

Design

Deploy & Secure

Manage Change

Analyze & Model

Monitor Policies & SLAs

Visibility

Analytics

Control

SOA Service Lifecycle

Page 13: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

SOA Infrastructure SOA SUITE

• Oracle SOA Suite • Option to WebLogic Suite

INCLUDES

• Oracle BPEL Process Manager

• Oracle Service Bus (ALSB)

• Oracle Web Services Manager

• Oracle Business Activity Monitoring

• Oracle Adapters (Technology) – File, DBMS, HTTP, JMS, …

• Oracle B2B engine

• Oracle Business Rules Engine

• Oracle Complex Event Processing (based on WL Event Server)

• Hot Pluggable: • Oracle SOA Suite for Non Oracle Middleware

Page 14: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

SOA参考架构:OSB是SOA核心基础

Service Intermediary

& Management

• Location

Transparency

• Service

Virtualization

• Configuration

• Any to Any

Protocol, Payload

• Advanced

Integration

Patterns

• High Availability &

Scale

Oracle Service Bus

BPM Portal

Adapters

B2B & BPM

Service

Repository

BPEL Process

Presentation

Services

Integration Services

Business Logic Business Logic

Page 15: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

Oracle Service Bus Key Ingredients for Enterprise Service Bus

Unified Security

FTP MQ

Adaptive Messaging

SMTP

Metadata

Reporting SLA 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

Page 16: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

服务虚拟化

Unified Security

FTP MQ

Adaptive Messaging

SMTP

Metadata

Reporting SLA 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

Page 17: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

应用

服务应用层 Oracle Service Bus 企业服务

服务

应用

应用

应用

HTTP/SOAP

JMS

FTP

SMTP

File 应用

HTTP/SOAP

JMS

FTP

SMTP

File

服务

服务

服务

服务

多种消息协议

消息中介

多种数据格式

多种通讯手段

• 多种消息协议

• HTTP(S), JMS SAF, 3P messaging via JMS Provider Interface (Tibco E4JMS), Native MQ Series,

File, FTP, Secure FTP, JDBC, email (SMTP/POP/IMAP), AS1, AS2, AS3, Secure FTP, ebXML,

Rnet

• Mix-and-match of transports; end-to-end guaranteed delivery when transport supports it

• 多种数据格式 • XML, CSV, NVP, EDI, Binary

• 多种通讯手段 • Request/response, synch and asynch, one-to-many, pub-sub

• Mix-and-match (e.g. sync-to-async)

服务中介多样化

Page 18: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

• 基于多种方式路由

• 条件路由、身份路由、动态路由

• 动态消息路由

• SOAP headers、Transport headers、JMS user properties、MQ headers、File

directory 、Email subject 、Message

content (XML and structured non-XML)

• 服务交换

• 混合多种模式: Async/Sync, Pub/Sub

$header

$body : 额度>500,000

$attachment

$fault

贷款审批应用

服务应用层 Oracle Service Bus 企业服务

HTTP/SOAP 普通

贷款审批

HTTP/SOAP

代理服务 业务服务1

路由

大额

贷款审批

业务服务2 JMS

路由和交换配置化

Page 19: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

定价展现

服务应用层 Oracle Service Bus 企业服务

定价查询

• 定义统一的数据模型

• 在此基础上,实现数据格式的转换,

保障了数据的统一性

• 支持XML和非XML数据格式转换

• 非XML消息通过图形化工具映射格式、

XML消息采用XSD定义

• 利用高度优化的XQuery引擎处理XML数据

• 支持XSLT方式对XML数据文件进行转换

转换

代理服务 业务服务

HTTP/SOAP HTTP/SOAP

路由

XML XML

Non-XML Non-XML

Java Java

消息转换图形化

Page 20: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

定价调整

服务应用层 Oracle Service Bus 企业服务

定价更新

• 错误处理 • 技术错误/缺陷 • 验证失败 • 安全错误: authentication, authorization, signing,

decryption • SOAP处理错误 • 触发客户定义的条件产生的错误 • 增加的消息调用错误消息 • 按错误条件搜索或报告

• 不同粒度的错误处理 • Service,Pipeline,Stage

验证

代理服务 业务服务

错误码

HTTP/SOAP

错误处理自动化

Page 21: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

HTTPS/SOAP

[X.509]

Encryption,

signing

JMS [SSL]

HTTP/SOAP

Authentication

[Basic]

Role-based

authorisation

ATM跨行汇款

服务应用层 Oracle Service Bus 企业服务

帐户修改

跨行汇款

安全框架

代理服务 业务服务

• 访问权限的控制

• 业务系统访问业务服务时要求进行身份验证

• 提供服务功能的系统也要求身份验证

• 采用标准的Web Service安全控制(WS-Policy)

• 传输级别安全

• HTTP, HTTPS, JMS + secured SSL channel

• 消息级别安全 (WS-Security)

• 通过安全老牌认证 (用户名, X.509, SAML)

• 数字签名保证消息完整性

• XML加密保证消息的机密性

安全架构可扩展

Page 22: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

统一的安全

Unified Security

FTP MQ

Adaptive Messaging

SMTP

Metadata

Reporting SLA 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

Page 23: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

getCustCredit

getCustCreditv1 getCustCreditv2

getCustCreditv1 Route

getCustCreditv2

• 松耦合的安全模型

• Identity propagation

• WS-Security (Message Security)

• Transport Security

Oracle Service Bus

Transport Security [Example: HTTP Basic Auth]

Message Security [Example: Signing / Encryption]

Transport Security

[Example: HTTP SSL Client Cert]

Message Security

[Example: SAML Token]

Begin

SOA安全模型

Page 24: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

并行处理

• 一个请求能被分解成不同的services的调用

• 多个服务的响应合并成单一输出

• 并行处理大大提升了性能

Split ForEach

ProcessOrder

Oracle Service Bus

Join ProcessOrder

15

Order 1 Order 2 Order 3

SPLIT Response

1 Response

2 Response

3

JOIN

Request

Payload

Response

Payload

Page 25: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

服务池和服务流量控制 路由到活动端点,服务的负载均衡

Service Clients

Endpoint URL 1

Endpoint URL 3

Endpoint URL 2 Proxy

Svc

Client 1

OSB Cluster

Bus

Svc

If a URI is non-responsive, take the URI out of the pool

Bring the URI back in the pool when it is back-up

• 自动的将不响应的URI拿出池外,重新可用时把它们放回

• 当后端状态变化时发出报警

Page 26: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

服务异常处理

Application Client

Service Clients

Oracle Service Bus Enterprise Services

Service Validate

Proxy Business

Error Code

HTTP/SOAP

• 异常处理场景 - 底层技术异常错误 - 报文验证错误 - 安全验证错误 - SOAP消息处理错误 - 自定义业务异常 - 服务调用错误

• 异常处理支持服务,服务编排等级别。支持JTA XA,JCA框架的传输适配器能实现事务一致性

EJB

Page 27: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

Service Result Cache Scaling Application Infrastructure

Process Flow /

Orchestration

Legacy

Service

Consumer

Service

Provider

P

B Backup Node

Primary Node Get / Put (Cachekey)

Service Data

Coherence Data Grid

OSB

Result

Cache

Ora

cle

Serv

ice B

us

Check cache

If results not in cache, invoke service & cache results

Side Cache Pattern

OSB 11gR1

Page 28: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

服务开发 Web Console 和 JDeveloper

Page 29: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

服务管理

Unified Security

FTP MQ

Adaptive Messaging

SMTP

Metadata

Reporting SLA 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

Page 30: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

服务监控管理

Ensure Quality of Service with built-in

optimizations for performance and monitoring

Reporting SLAs Monitoring Dashboard Open Interfaces

Management

• 监控 • 监控整个OSB服务器或单个节点的告警

• 仪表板 • 失败调用和性能相关的图表

• 整体ESB的摘要

• 管理SLA告警 • 基于操作的告警(Alerts)

• 基于消息管道的告警

• 报告 • 产品缺省带的报告提供者

• 客户化的报告提供者

• 开放的接口 • JMX监控接口

• SNMP Alerts

• 与OSR同步服务信息

Page 31: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

告警定义及处理

• Service Level Agreements (SLAs)

• Guarantee a certain level of performance and/or quality

• Trigger reports and Alerts

• Email

• SNMP

• JMS

• Rules based on:

• Response time

• Message count

• Success/failure ratio

• Schema violations

• Security violations

Page 32: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

系统级监控管理 Oracle CAAM(Part of Oracle EM)

Page 33: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

业务信息统计分析和日志记录 Oracle BAM

OSB与BAM结合,实现服务总线业务

的实时监控

Page 34: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

配置管理

Unified Security

FTP MQ

Adaptive Messaging

SMTP

Metadata

Reporting SLA 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

Page 35: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

配置管理框架

• Change Center

• Semantic Integrity of Artifacts

• View & resolve conflicts

• Undo, Re-do tasks

• Audit changes

• Import/Export

• Customization Files

• Fully scriptable, integration with

OER/OSR

• Test Console

• Validate changes

Page 36: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

• 分布的负载

• 根据负载伸缩

• 热备形式的消息路由容错

X

getCustCredit

Connection Failover

Route

getCustCredit

getCustCredit

Load Balancing Server

Managed Server 2 Managed Server 1

Oracle Service Bus

getCustCredit

getCustCredit

Connection Failover

Route getCustCredit

服务负载与管理

Page 37: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

负载管理Work Managers

WebLogic 9.x

Oracle Service Bus

Service Request

CRM 6 Future

Channels

Service Request

Customer Proxy

Service

Customer 2

Proxy Service

Order Proxy

Service

Query Proxy

Service

Provisioning

Proxy Service

MIP Proxy

Service

Work Manager

1 - Customer

Work Manager

2 - Order

Work Manager

3 - Query

Work Manager

4 - Provisioning

Work Manager

5 - MIP

Page 38: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

企业IT资产管理的技术需求

构建SOA企业IT 资产管理平台

Page 39: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

SOA Governance Application Production Assurance

Registry / Repository Policy Management SOA Runtime and

Management

Publish, Discover, Change Manage

Services (OER + OSR)

Define & Monitor Security & SOA

Policies (OWSM)

Provision Services & Monitor SLAs

(OSB + EM + IDE)

Page 40: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

SOA服务生命周期管理

Design Time and Runtime • End-to-end Service Lifecycle management with SOA Governance.

• Centralized policy authoring, attachment & enforcement with OWSM agent.

• Service-level metrics streamed to unified Enterprise Manager console (multiple domains)

Dev Tooling

IDE, CVS, Ant etc

OSR OER

11g Service Infrastructure

Business Rules

Mediator

Policy Enforcement

BPEL Human

Workflow

Oracle Service Bus

Common JCA-based connectivity infrastructure

Design Time Run Time

A. Browse & Consume

B. Publish (Harvest)

C. Deploy to different environments

D. Runtime Roll-up (Closed Loop)

Page 41: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

<Insert Picture Here>

议程

• SOA的挑战

• Oracle Service Bus技术特点

• 性能数据参考

• 应用场景

• 总结

Page 42: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

性能数据参考

• 中国移动飞信OSB的性能测试

• 华为业务软件ESB选型

• 广东电信MBOSS CSB的性能测试

Page 43: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

本地和异地飞信认证服务调用

说明

ESB A

ESB B

飞信认证

服务

服务的具体实现

(Provider)

Proxy

Service

飞信认证

服务

飞信认证

服务

A省系统请求

飞信认证服务

服务调用系统

(Requester)

Business Service

基于SOAP的

WevService,路由信息由调用者放入

SOAP头中

飞信认证

服务

B省系统请求

飞信认证服务

统一发布的

全网服务

B省系统请求

飞信认证服务

测试3:异地调用的吞吐

测试

测试2:本地二次封装调用的吞吐测

测试1:本地直接调用的

吞吐测试

为了让全网发布的服务在所有节点上的配置都显示为同质化,从而降低维护复杂度,故对于本地发布的服务也再做一次转换映

射;我们需要测试做该二次映射

会带来多少性能损耗

说明:模拟两级ESB针对“本地ESB的服务调用”及“异地ESB的服务调用”,进行压力测试.

Page 44: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

本地和异地飞信认证服务调用测试用例

• 测试用例1

• B省直接调用发布在本地的飞信认证代理服务,测试直接调用本地代理服务的性能;

• 测试用例2

• B省通过发布的全网服务调用本地飞信认证代理服务,测试全网服务调用本地代理服务的性能;

• 测试用例3

• A省通过发布的全网服务调用异地飞信认证代理服务,测试全网服务调用异地代理服务的性能

Page 45: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

中国移动总部OSB性能测试

• 测试服务器硬件配置

• 测试压力软件:Load Runner 8.0

Oracle Service Bus Platform Hardware

Model: HP DL360G5 Processor: Intel Quad-Core X5460

OS Name: Oracle Enterprise Linux # of CPUS: 2

OS Version:

v5.3 # of Cores/CPU: 4

RAM: 16G Processor Speed: 3.16GHz

HDD: 8 x 72GB SAS 15K 2.5" HDD Network Interface: 千兆

TPCC=138000

Page 46: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

测试场景--TPS分析 测试用例1(本地服务直接透传性能)

0200400600800

1000120014001600

2K 10K 50K 100K

服务请求负载

每秒交

易数

(TPS)

30并发用户

50并发用户

100并发用户

测试用例3(全网服务异地路由性能)

0

200

400

600

800

1000

1200

1400

2K 10K 50K 100K

服务请求负载

每秒交

易数

(TPS)

30并发用户

50并发用户

100并发用户

说明:2K的负载未加think time的性能大约是1900TPS

测试用例2(全网服务本地路由性能)

0

200

400

600

800

1000

1200

1400

2K 10K

服务请求负载每秒交易数(TPS)

30并发用户

50并发用户

100并发用户

说明:2K的负载未加think time的性能大约是1300TPS

Page 47: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

华为业务软件ESB选型 测试场景

• Client:LoadRunner和自编写的测试桩

Client

Auth sendSMS Deduct

PxySendSMS

Oracle Service Bus

1

2

3 4

5

6

ProxyService

BusinessService

Proxy

Service

Page 48: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

华为ATAE的配置

Item Qty. Description

OSB服务器 1

华为ATAE R2+

CPU: 2CPU(Intel 2.13G 4 core/per

CPU)

内存: 24G

OS: Suse Linux 10 SP1,64bit

测试压力机 1

华为ATAE R2+

CPU: 2CPU(intel 2.13G 4 core/per

CPU)

内存: 24G

OS: Windows

Page 49: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

OSB的测试指标

指标名称 指标值

测试线程并发数 100

CAPS(每秒) 1509

处理的响应时间(秒) 67ms

CPU占用情况 60%

测试时长 14小时

错误数 0个

Page 50: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

中国电信ESB系统定位

ESB 服务平台

网厅系统

渠道接入

网厅、掌厅系统

10000系统

自助终端系统

外部客户门户

核心系统

省CRM 省计费 省SPS

服务

调用

服务

提供

服务

调用

其它域系统

集团系统(CRM、CSB)

服务

调用

服务

提供

统一充值平台VC

在线计费系统OCS

综合资源管理系统

综合网络激活系统INAS

--------------

服务

提供

服务

调用

承担省级系统与集团CSB(DEP平台)的服务交互,由DEP平台调用的服务开放注册到ESB上,由ESB完成路由、协议转换、数据转换的功能。

MBOSS系统内不同系统之间的服务请求者对服务提供者的调用,可以通过ESB来进行;由ESB提供智能路由、协议转换、数据转换、应用适配,传输加密,流量控制等功能。针对MBOSS内部门户系统对CRM、计费、SPS系统的能力要求,必须通过调用ESB上提供的服务来完成业务功能。对于外部渠道的接入,如淘宝、贝塔斯曼、安迅等非电信建设的系统,对电信核心系统的能力要求,也必须通过调用ESB上提供的服务来完成。

可以将其他业务域系统,如OSS、Billing、MSS、ODS等系统的服务通过ESB包装成服务,注册到ESB上。如综合资源管理系统的服务、统一充值、OCS查询的服务等,供MBOSS域内的子系统使用。

MBOSS核心系统(CRM、计费、SPS)业务服务层甚至业务流程层提供的服务都可以在ESB上进行注册,从而对核心域内的所有服务进行统一管理和查询;解耦域内各个子系统之间的调度。实现对所有服务的管控,包括对服务调用权限的定义和控制以及对服务全生命周期的管理,即管理每个服务从需求提出-〉开发-〉发布-〉部署上线-〉维护更新-〉下线的全过程。(MBOSS核心系统之间的服务调用暂不通过ESB总线进行服务集成,而是通过专用接口服务直连实现。)

Page 51: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

广东电信MBOOS CSB测试物理部署

Load

Runner

BAM

132.121.15

2.22:8001

Osb test

console

(web

service) OSB

101:8002

CRM服务

无逻辑

Load

Runner

CAMM

Osb test

console

(tuxedo) OSB

86:9001

CBS服务

无逻辑

F5

Oracle

DB

Oracle

DB

Data

file

HP SuperDome

Domain1(16cpu):作为数据库主机及OSB主机;

HP SuperDome

Domain2(16cpu):作为数据库主机及OSB主机;

PC SERVER-1:作为OSB BAM

监控主机;

PC SERVER-2:作为OSB

CAMM监控主机。

Page 52: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

性能测试结果(未经调优)

目标要求: 广州上线100tps 响应时间《1秒

广深东佛200tps响应时间《1秒

广东省:400tps响应时间《1秒

目前测试结果: 极限测试两个域顶峰时270TPS 400并发用户,响应时间平均为0.25秒

疲劳测试两个域36小时 150

并发用户,100TPS 响应时间平均为0.20秒

Page 53: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

<Insert Picture Here>

议程

• SOA的挑战

• Oracle Service Bus技术特点

• 性能数据参考

• 应用场景

• 总结

Page 54: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

Oracle Service Bus适用环境

• OSB适用于: • 采纳了面向服务的架构 (SOA)

• 正在推出新项目和应用适应业务新需要,并正在经历耗时的编程工作,延缓了快速响应业务需求的能力

• 业务经常发生变化

• 部署多种服务

• 努力跟踪、发现、部署、管理服务已经逐渐难于控制

• 正在使用点对点集成

• 具有异构环境

• 多操作系统, 多厂商, 多开发语言

• 使用了多种平台:Oracle-BEA/IBM/MS

• 具有分布式环境

• 多部门,多地域

Page 55: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

• 关键标准:

• 低成本的整合方案

• 配置/合成取代编码

• 配置环境支持服务动态修改

• 消除对Java开发者的依赖

• 能扩展到 Web Services和其他传输

• 消除终端的服务管理

Billing Network Customer Service Mgmt

Oracle Service Bus

适配器层

商业领域层

Use Case:无编码集成

Page 56: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

Cingular Service Gateway

Extended web-service Service Broker/ALSB

SimpleFilter

LdapProfile

1

2 3a

Parlayx web-service

4

SLEE

5

SMSC

6

3c

WLNG Service Orchestration Re-useable Services

77 7

1

3b

Page 57: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

• 关键标准:

• 低成本的整合方案

• 配置/合成取代编码

• 通过配置完成Binary XML转换

• 消除对特定开发语言、类库的依赖

• 消除接口重复建设

• 能扩展到 Web Services和其他传输

• 快速实现

CMPP SMGP

ISO8583 BankProxy

SWIFT Customer

Oracle Service Bus

适配器层

特殊协议

Use Case:自定义协议集成 特殊专有协议、行业专有等

Page 58: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

北京银行:ISO8583 集成

• ISO8583通信协议

• ISO8583标准规定了银行卡应用系统间交换信息的规范及数据安全保密接口

• 二进制数据,效率相对较高:5位字节交易号+16位字节bitmap+数据区

• 可分为定长和变长之分

• ISO8583 Socket Transport主要来实现类ISO8583的报文接收/发送、拆包/组包、加解密过程

Socket

Transport

layer

Binding

layer

Proxy

Service

Receive

Message

Unpack

message

Message

processing

logic

Pack

message Dispatch

message

Binding

layer 接收报文,

拆包并获得

业务数据

Receive ISO8583

from Socket Socket

Transport

layer

将业务数据

传给ALSB 从ALSB获

得业务数据

组包并发送

报文

通过payload

操作数据

Send ISO8583

from Socket

Page 59: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

广东电信:短消息网关协议SMGP集成

Page 60: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

Cluster A

ESBa1dv:7032

Cluster A

ESBa2dv:7042

Cluster A

ESBa3dv:7052

ADMIN

SERVERManaged

Server 3Managed

Server 4

Managed

Server 5

Cluster A

ESBa2dv:8001

BEA AQUALOGIC Service Bus

PIC Server

ESBa2dv:7001

Database

Grinder Test Server

ESBa1dv

ESBa1dv

Managed

Server 2

Managed

Server 1

Cluster A

ESBa1dv:7032

Cluster A

ESBa1dv:7032

RSI Server

Use Case:企业集成总线

• 关键标准:

• 整合不同生产商的不同应用

• 绝对不会降低可靠性

• 高性能

• 消息完整性保证

• 可扩展性:整合 XML & non-XML 服务,遗漏传输

• 可视化管理 (监控, 异常, 报告)

• 高级功能: 聚合, 确认, 优先权

Page 61: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

广东电信MBOSS CSB实现架构阶段1

Page 62: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

中国铁通TBSS基于服务总线的企业集成

Page 63: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

以交费开机为例

计费客户端

计费系统

97系统

网管系统

1

2

代理服务

97修改用户信息

网管开机服务

修改用户信息服务 开机服务

Route Response

3 4.1

4.2

4.1

4.1

4.2

4.2

5.1

5.2

6

7

6

开机服务注册在应用整合平台上,代替接口表

开机流程采用服务重组实现,流程不可视

可以是同步调用/异步调用

应用整合平台

河南网通基于OSB平台下的新业务流程

Page 64: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

Extended web-service Service Broker/ALSB

SimpleFilter

LdapProfile

1

2 3a

Parlayx web-service

4

SLEE

5

SMSC

6

3c

WLNG Service Orchestration Re-useable Services

77 7

1

3b

Use Case: 企业服务网关

• 关键标准:

• 服务协议代理

• 互连网和互联网的安全性实施

• 使用经过网关的IT服务连接网络服务

• 合作伙伴之间在B2B网关上的通信

• 更丰富的客户服务内容( ESB + Orchestration)

Page 65: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

数据中心1接口功能 权限校验 业务路由

数据中心2接口功能

身份权限 验证服务

业务服务总线 --ESB

客服及 电子渠道类系统

ATMI

外围SP类平台

HTTP

远程写卡平台

CORBA

业务路由 决策服务

数据中心1

接口服务

数据中心2

接口服务

服务注册

接口应用逻辑实现层APP

接口适配

接口平台公共服务模块

接口平台业务服务模块

BOSS系统统一接口平台

BOSS公共数据库 BOSS数据

分中心DB1

BOSS数据

分中心DB2

CBOSS系统

CORBA 通过整合和集中BOSS系统的对外服务接口,

使不同平台来的服务请求能够获得统一的业务

处理规则,并解决了接口功能重复建设的问题

通过对服务接口的重构,提升了接口功能的

内聚性,减轻了外围平台服务调用的复杂度,

同时BOSS业务规则能够收敛到系统内部,易于

管理和调整

实现对外部平台的管理及服务接口调用的

权限认证,使BOSS系统的对外服务提供更加

安全和有序

通过引入ESB服务总线,提升了系统间应用

集成的效率和灵活性,使接口平台上的功能

服务能快速的发布出多种类型的接口方式,

增强了对业务需求响应的及时性,并能够实

现对服务接口的规范化管理。同时服务总线的

建设也为系统总体架构向SOA方向发展提供了

可行的技术支持

统一接口平台及ESB服务总线的建设,对外屏

蔽了BOSS数据域的分拆,从而大大降低了由此

所给外围平台产生的影响

平台建设的优势及提升面

浙江BOSS系统对外服务的统一接口平台架构

Page 66: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

北京银行大前置平台

• 总行和分行的前置平台技术架构和功能组成基本相同

• 前置平台是由两部分组成:ALSB+中间业务平台

• ALSB实现前置平台,来统一接入各种渠

道的中间业务请求,同时提供各种通用服务,并以服务编排的方式实现对后台中间业务和主机资源的业务组合,体现业务处理的灵活性

渠道

AL

SB服

务总

线应

用服

务器

接入接出层 Socket WebService MQ File

业务整合层 路由 数据转换 流程处理

通用服务层 拆组包 访问安全 记流水 日志

中间业务

平台Framework

传统代收业

务特色业务

财税、财政

类业务其他

柜面 ATM 自动终端 电话银行

Tuxedo

中间业务管理

系统

核心 三方 个贷

Page 67: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

Use Case:The “SOA Infrastructure”

• 关键标准: • 重用技术资产和知识资产

• 避免被主要的应用生产商锁住

• 消除应用之间的点对点整合

• 系统到系统交易的安全性保障

• 服务监控保证 QoS(服务质量)

• 重用跨LOBs的商业过程

• 使用ESB作为核心基础,配上portal, security, data

services

共享的服务基础设施

表现服务

核心业务服务

数据服务

Data

Synchronization Data

Aggregation

Enrichment Custom Business

Services

Reusable Portlets

业务流程

Orchestration

Data

Access

Rationalization

交付渠道架构

Portals PDA ... Fat Clients

IVR

System-centric Processes Human-centric Processes

JDBC file://

接入服务

Messaging Adapters Custom

APIs JDBC file://

Legacy Packaged Databases &

File Systems

未服务化的企业资产

已服务化的应用

服务注册库

企业服务总线

安全服务

服务资产库

公用服务

Cell Applications

服务调用框架

Page 68: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

• 基于SOA思想设计整体软

件架构,软件模块设计松耦合化,通过服务总线集成

• 工商内部系统之间及与外部委办局系统之间,通过web 服务接口,利用服务总线交换数据

• 物流过程数据捕获和查询通过Web 服务实现

• 数百家指定企业采集的物流数据通过远程Web 服务方式上传到工商数据中心

• 在企业端,基于RFID技术

自动收集食品的物流过程数据和执法人员的自动检测服务

奥运食品安全

追溯系统

食品追溯

一级平台

首都食品安全监控系

委办局

计算机

移动执法平台

PDA

短信

基于SOA 应用支撑平台

多种接入方式

多个应用系统集成

应用集成和数据交换平台

RFID中间件平台

网络支撑环境

奥运指定生产厂商子系统

奥运指定配送商子系统

奥运村仓储子系统

奥运消费场所

基本信息管理

跟踪追溯

预警服务

应急处理

统计分析

基于SOA的解决方案 北京奥运食品安全追溯管理信息系统案例

Page 69: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

• 面向Web服务的松耦合接口

• 服务调度流程实现

• 数据交换路由实现

• EPC数据捕获和查询接口集成

• 高吞吐量设计

• 服务质量管理

奥运食品安全追溯系统中的服务总线

Page 70: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services

<Insert Picture Here>

议程

• SOA的挑战

• Oracle对航空公司SOA的理解

• Oracle Service Bus技术特点

• 性能数据参考

• 应用场景

• 总结

Page 71: Oracle SOA 技术交流...SOA Governance Application Production Assurance Registry / Repository Policy Management SOA Runtime and Management Publish, Discover, Change Manage Services