利用现有企业系统创造价值 ESB — Eric Newcomer

Download Report

Transcript 利用现有企业系统创造价值 ESB — Eric Newcomer

利用现有企业系统创造价值 —
有关可扩展 ESB 的案例分析
Eric Newcomer
IONA Technologies 首席技术官
概况
我们的客户是全球知名的大公司



环球电信的 80%
世界电信运营商 100 强 70% 的金融服务
系统集成商合作伙伴全为蓝筹企业
业务稳定发展,始终保持盈利性增长




1991 年创立
1997 年上市
库存现金超过 5 千万
无负债
NASDAQ:IONA
我们的理念:Making Software Work Together™
我们的足迹遍布全球



欧洲、中东和非洲总部 — 爱尔兰都柏林
美国总部 — 马萨诸塞州
亚太区总部 — 日本东京

我们深悉企业计算系统中常见的多样性和异
构性问题。

我们把不同供应商开发的各种应用程序集成
在一起,它们原本在不同的操作系统上运行,
使用不同的协议和消息格式。

尤其是在应用程序设计之初从未考虑过日后
的集成时,我们越能发挥积极作用。
Eric Newcomer,
IONA Technologies 首席技术官
•
负责控制和传达 IONA 在采用标准、体系结构及设计方面的技术战略。
•
1999 年 11 月加入 IONA,此前他曾在 Digital/Compaq 工作 16 年,担任过多个不同
的技术和管理职务。
•
率领 IONA 团队参与围绕 Web 服务展开的标准化活动:
– W3C 的 XML 协议工作组 (XML Protocols Working Group) 的成立者之一
– W3C 的 Web 服务体系结构规范 (Web Services Architecture) 的编者
– 最近提交给 OASIS 且已发布的 Web 服务复合应用程序框架 (Web Services
Composite Application Framework, WS-CAF) 规范集的合著者
•
畅销书《了解 Web 服务》(Understanding Web Services) 的作者,此书于 2002 年 5
月由 Addison-Wesley 出版;该出版社还于 2004 年出版了他的另一本新书《Web 服
务集成》(Web Services Integration)。
 全球最强大的物流供应商之一
 全球各地遍布 500 万家企业客户
 230,000 名员工
今天我们主要讨论…
 一年与客户交流 6 千 6 百万次
 使用 ESB 式集成
 构建面向服务的集成平台时遇到的严
峻挑战
 企业挑战 / 可扩展解决方案
 回顾德国邮政体系结构
父公司
“我们力图成为欧洲和全球邮件、包裹、快递及物流市场的领先公司。
构建一个面向服务的平台,让我们在这个平台上方便地安装各种 IT 系统:
新开发的、现有的,甚至那些因并购而得到的系统,这是一个极富吸引
力的价值主张。”
Michael Herr
高级 IT 总监
SOA 平台组主管
德国邮政:SOA 的早期采用者
业务流程体系结构
 德国邮政从 1999 年开始采用
SOA
 从 2001 年底开始开发集成基
础结构并投入使用
业务域模型和 SOP
(面向服务的平台)
 已在该基础结构上为大约 20
家服务参与者提供服务功能
 2004/2005 年准备再吸纳大约
15 家服务参与者
 80 多项服务投入使用,另有
40 项正在开发中
IT 应用程序前景
资料来源:德国邮政集团
业务问题
我们力图成为欧洲和全球邮件、包裹、快递及物流市场的领先公司。
Michael Herr
德国邮政
• 公司通过收购 DHL、Airborne 和 PostBank 不断增长
• 全球性的激进增长计划和战略
• 全球物流市场动态 (FedEx / UPS)
– 推动跨部门协作需求
– 竞争压力增大
技术问题
我们的战略决策是采用最佳的技术部署方式,该决策因使用 Artix 而得到支持,
Artix 确保我们为业务的良好运营精挑细选的各类应用程序和系统协同工作。
Michael Herr
德国邮政
•
易用的 WSDL 接口可将各类系统连接到服务骨干系统
– 基于标准
– 必须能够兼容遗留系统
•
全面的用户和权限功能可完成身份验证、授权及管理任务
•
综合服务目录专供动态绑定使用
•
消息验证进行语法检查和类型验证
•
转换引擎用于结构化文档映射和内容映射
•
转换机制用于各种不同的交互样式
技术挑战
增加对企业级质量服务、增值服务及其他企业需求
的支持 — 既昂贵又耗时
– 安全性:基于标准 (JAAS),基于截获者模型
– 传输和协议:内部或现有协议
– 类型支持:等同于业界标准的 JAX-RPC 类型支持
– 管理:与企业系统管理解决方案集成
可扩展 — 问题类型
问题类型
可扩展问题
增加质量服务需求
企业问题
具体的产品问题
Complexity Of Application
各种需求推动实现可扩展性
SOA 应用程序平台套件
现有企业系统
平台
.NET、J2EE
CORBA、CICS/IMS、Tuxedo、Tibco
编程语言
C#、Java
体系结构
分布式
端口
HTTP
负荷
XML (SOAP)
安全需求
WS-Security、Kerberos、JAAS 等
系统管理
WSDM 和 Web 服务管理工具
会话管理
无状态
有状态
事务管理
发后不理 (Fire and Forget)
ACID 事务
弹性
无
负载平衡、故障恢复、灾难恢复
可扩展性差距
需求
COBOL、C++
单一式 / 集中式
IIOP、MQ、TibRV、JMS、TUX、其他
二进制(固定、IIOP、TibMsg、FML)
自主开发、LDAP、RACF 等
BMC Patrol、Tivoli、CA Unicenter
企业服务总线
企业服务总线是为降低集成成本而开发的新体系结构:
– 吸纳 SOA 的规则、利用 Web 服务的优势
– 彻底改变集成项目的技术和成本
业界观点 — ESB 必须具有以下特点:
– 对所有相关 XML 和 Web 服务标准深入的内在支持
– 转换功能和路由支持
– 支持现有企业应用程序平台和基础结构
– 与企业应用程序集成 (EAI) 或自定义集成方法相比,成本大大降低。
– 具有服务功能的关键企业系统
– 适合传输、协议、应用程序平台和增值服务
的插件体系结构
可扩展 ESB
– 公认有效的高性能轻型运行时环境
– 包括大型机在内的广泛平台支持
.NET Client
Java Client
Mobile Device
Extensible ESB
C++
Java Server
CORBA Server
C++ Server
Mainframe
体系结构回顾
方法
• 德国邮政采用 IONA 的 Artix 作为其服务骨干系统 (SBB) 的集成平台
• 企业需求促进采用可扩展 ESB 技术
– 适合传输、协议、应用程序平台和增值服务的插件体系结构
– 用于常用消息传送中间件和应用程序平台的插件
– 旨在提高现有安全性、管理、高可用性和事务能力的可配置插件
– 包括大型机在内的广泛平台支持
Port
Port
Contexts
Contexts
Binding Manager
Stub
Stub
WSDL
IONA Security
Framework (ISF)
Login Client
Interceptor
图例:
Request
Interceptors
Locator Endpoint
Interceptor
Locator Endpoint
Interceptor
Login Client
Interceptor
Interceptor
Interceptor
XSLT
Interceptor
XSLT
Interceptor
Interceptor
Interceptor
Security Context
Request
Interceptors
Authorization
Adaptor
– 可配置性极高
– 通过插件实现扩展
Configuration
Security Context
• 用于分布式消息处理的微内
核基础结构
Application
Business Code
Authentication
Adaptor
端点体系结构
Artix 包含的截获程序和绑定
Interceptor
为 Artix 3 编写的新组件
Text
SOP 组编写的截获程序
SOAP Protocol
Binding
Message
Interceptors
SOAP Protocol
Binding
SOAP Context
Plugin Manager
Text
SOAP Context
通过 Artix 2.x 部署的支持组件
Message
Interceptors
Interceptor
Library Manager
Interceptor
Interceptor
HTTP Transport
Network
HTTP Transport
HTTP Context
Management
Plugin
HTTP Context
应用程序开发人员编写的业务代码
插件和截获程序
Configuration
Port
Port
Contexts
Contexts
Binding Manager
Stub
Stub
WSDL
Login Client
Interceptor
Locator Endpoint
Interceptor
Login Client
Interceptor
Interceptor
Interceptor
XSLT
Interceptor
XSLT
Interceptor
Interceptor
Interceptor
Security Context
IONA Security
Framework (ISF)
Request
Interceptors
Locator Endpoint
Interceptor
Security Context
Request
Interceptors
Authentication
Adaptor
SOAP Protocol
Binding
Message
Interceptors
SOAP Protocol
Binding
SOAP Context
Plugin Manager
SOAP Context
Interceptor
Message
Interceptors
Interceptor
Library Manager
Management
Plugin
HTTP Transport
Network
HTTP Transport
HTTP Context
Interceptor
Interceptor
HTTP Context
– 请求层截获程序具有消息的逻辑
视图
– 消息层截获程序具有消息的物理
视图
Application
Business Code
Authorization
Adaptor
• 插件用来部署截获程序
• 截获程序经过一定的部署形成截
获程序链(或绑定列表)
• 截获程序链处理传输层到应用程
序层的消息
• 截获程序可在不同的层上访问和
处理消息
传输和绑定插件
Application
Business Code
Port
Contexts
Stub
Stub
WSDL
Request
Interceptors
Request
Interceptors
Locator Endpoint
Interceptor
Login Client
Interceptor
Authentication
Adaptor
Authorization
Adaptor
IONA Security
Framework (ISF)
• 插件,包含要实现传输
的消息层截获程序
Port
Contexts
Binding Manager
Locator Endpoint
Interceptor
Login Client
Interceptor
Interceptor
Interceptor
XSLT
Interceptor
XSLT
Interceptor
Interceptor
Interceptor
Security Context
– SOAP、XML、Fixed
数据格式…
Configuration
Security Context
• 插件,包含要实现协议
的请求层截获程序(绑
定)
– HTTP、JMS …
SOAP Protocol
Binding
Message
Interceptors
SOAP Protocol
Binding
SOAP Context
Plugin Manager
SOAP Context
Interceptor
Message
Interceptors
Interceptor
Library Manager
HTTP Transport
Network
HTTP Context
Management
Plugin
HTTP Transport
HTTP Context
Interceptor
Interceptor
增值服务插件
Application
Business Code
插件,包含每一层上要实现其
他若干增值服务的截获程序
Configuration
Port
Port
Contexts
Contexts
Binding Manager
Stub
Stub
WSDL
Login Client
Interceptor
Locator Endpoint
Interceptor
Login Client
Interceptor
Interceptor
Interceptor
XSLT
Interceptor
XSLT
Interceptor
Interceptor
Interceptor
Security Context
IONA Security
Framework (ISF)
Request
Interceptors
Locator Endpoint
Interceptor
Security Context
Request
Interceptors
Authentication
Adaptor
SOAP Protocol
Binding
Message
Interceptors
SOAP Protocol
Binding
SOAP Context
Plugin Manager
SOAP Context
Interceptor
Message
Interceptors
Interceptor
Library Manager
Management
Plugin
HTTP Transport
Network
HTTP Transport
HTTP Context
Interceptor
Interceptor
HTTP Context
身份验证
授权
单点登录
路由
会话管理
系统管理
事务
Authorization
Adaptor
–
–
–
–
–
–
–
SOAP 处理程序
Application
Business Code
Configuration
Port
Port
Contexts
Contexts
Binding Manager
Stub
Stub
WSDL
Authentication
Adaptor
Login Client
Interceptor
Locator Endpoint
Interceptor
Login Client
Interceptor
Interceptor
Interceptor
XSLT
Interceptor
XSLT
Interceptor
Interceptor
Interceptor
Security Context
IONA Security
Framework (ISF)
Request
Interceptors
Locator Endpoint
Interceptor
Security Context
Request
Interceptors
Authorization
Adaptor
SOAP Protocol
Binding
Message
Interceptors
SOAP Protocol
Binding
SOAP Context
Plugin Manager
SOAP Context
Interceptor
Message
Interceptors
Interceptor
Library Manager
Management
Plugin
HTTP Transport
Network
HTTP Transport
HTTP Context
Interceptor
Interceptor
HTTP Context
• Aritx 提供的SOAP 协议插
件允许注册处理程序。
• 供助这些处理程序,可以访
问 SOAP Header和 SOAP
正文,可自定义 SOAP 消
息的处理方式。
IONA 安全框架 (ISF)
Configuration
Port
Port
Contexts
Contexts
Binding Manager
Stub
Stub
WSDL
Login Client
Interceptor
Locator Endpoint
Interceptor
Login Client
Interceptor
Interceptor
Interceptor
XSLT
Interceptor
XSLT
Interceptor
Interceptor
Interceptor
Security Context
IONA Security
Framework (ISF)
Request
Interceptors
Locator Endpoint
Interceptor
Security Context
Request
Interceptors
Authentication
Adaptor
SOAP Protocol
Binding
Message
Interceptors
SOAP Protocol
Binding
SOAP Context
Plugin Manager
SOAP Context
Interceptor
Message
Interceptors
Interceptor
Library Manager
Management
Plugin
HTTP Transport
Network
HTTP Transport
HTTP Context
Interceptor
Interceptor
HTTP Context
– LDAP
– 包(如 Netegrity)
Application
Business Code
Authorization
Adaptor
• ISF 是与安全相关的类
库
• ISF 将安全相关的截获
程序与 IS2 联系起来
• ISF 可由以下两项的适
配程序进行扩展:
德国邮政结论
Artix 提供:
– 在服务参与系统之间处理消息的基础结构
– 处理消息的预制构造块
– 动态处理消息
Artix 特点:
– 灵活、可扩展
– 基于组件插件体系结构
Artix 符合德国邮政的要求
德国邮政 — 建议
•
•
•
•
从面向业务的逻辑视图(服务体系结构)开始
大量使用(开放)标准,摆脱对供应商的依赖
从业务(而非 IT)的角度考量和实现集成
…是的,这样做的确很成功!
问题