SOA 实施方法论
5
集成手段几种模式
点对点 集成
传统 EAI
BPM 为中 心 的集成
SOA
焦点在于跨应用系统的业务流程
Finance
一种跨越业务和 IT 鸿沟的解决方 案 – BPA 和 BAM 工具涉及业务 人员
BPM
BPM
业务流程和集成逻辑都以 BPM 作为宿主 对以系统为中心,和以人为中心 的流程,支持程度各有不同 BPM 已内置集成科技 – 格式转换、 消息传送、适配器
4
7
5
未共享
8 11 10 7 11 9 12 11 9
D
E F G
共享
共享的业务服务
9 10 11 12
务 管 理
用
服 务
总
线
信息集成和数据访问服务
2 4 6
服务目录
1 2
8
3
9
4 10
5
11
6 12
1
3
7
7
17
SOA 实施模型
SOA 平台
Future Vision
Execution
12 mos 6 mos 3 mos
Sales
B2E
Engineering
B2C
Service
Partners
Customers
Composite Applications
Services Management
Service Infrastructure Layer
Common Services
可重用的服务
Presentation Services Shared Business Services
• 更低的开销,带来更敏捷的业务/更弹性的 IT
• 主要基于 “组装” 方式来重用服务 • “松耦合” – 降低消费者和供应者间的依赖性 • 更明确的软件/应用构建过程 (降低技能要求)
•
更好的运行控制
• 更高的可扩展性和可用性,“随需” 服务 • 更容易管理,更透明,更好的 SLA (服务水平)
需要: • 更高层次的战略,规划和纪律 • 共享的技术和实践框架 • 不仅考虑投资回报率,同时考虑资产的回报率 • 更大的计划需要更高的组织承诺和支持 • 随着更高层次的采用而来的 “心态/行为转变”
34
JMS
SOAP
MQ
getCustProfile
WebLogic / WAS
getCustAddress .NET
getCustCredit Mainframe
服务设计三大原则
Web services 高性能的关键 • 粗粒度 • 异步 • 松耦合
• 独立自治 • 无状态、等幂
37
SOA 工业化之路
核心业务 服务
数据服务 接入服务
Orchestration Enrichment
Custom Business Services Data Synchronization Custom APIs
Rationalization
Data Access
Data Aggregation
JDBC file://
- 降低成
本和风险
传统的应用开 发与集成方式
的SOA项目
•多个项目的基础服务
•提供服务总线
•异构系统整合 •数据透明复用 •一定的服务注册/监控/管理能力 时间
16
渐进式的项目收割
SOA成熟度
服务基础设施
复合式应用 表现服务
5 8
应用
A
B C
服
服 务 公
1
2
3
1
5 2 7 8 1
3
6 7 10 9 3
Databases
MiddleWare Interactions
(TUXEDO, MQ Series,ect.)
27
SOA 成熟度模型
29
Stages of SOA Adoption & Best Practices
30
SOA 工业化之路
第一阶段 – 机会型
31
31
企业服务总线
跨越网络智能的服务请求-回 应、路由、事件响应
特点
• 统一的元数据 (XSD, WSDL) • 统一寻址 (逻辑命名) • 适配器 • 整合的 UDDI 注册 • 灵活的基于内容路由的服务 Enterprise Service Bus
Registry
Transformation | Routing | Messaging | Registry
• 丰富的监控和消息追踪
Service Bus
Information and Access Services
Enterprise Information Systems
Data and Middlepplications
Third Party Products (Erp, CRM, etc.)
Registry
• 良好的绑定框架支持ESB服务
• 单元测试框架
特别点
Transformation | Routing | Messaging | Registry
High
一个项目接一个项目地执行
针对所有的域来对待 SOA
15
通常的SOA分步实施策略
SOA 价值增加
灵活的IT - 改变竞争
范围
3 企业级的整体
SOA战略 - 强化竞争
2 多个项目基于服
•高效的开发 •简单/灵活的运 行时业务定制 •有效的IT治理
优势
1 特殊需求驱动
务的共享平台
•全面的业务梳理和服务识别 •建立整体SOA服务基础设施 •实现业务流程的灵活编排
• WS-* 标准支持
Metadata
store
In Memory JCA CLR REST SOAP JCA HTTP
• 服务虚拟化、逻辑名称
特点
• 优化的传输和数据布局
Java, Other services
Slide 32
SAP, Siebel, Peoplesoft
.Net, C#
Yahoo! Amazon
Hub 为中心 – WLI, WebMethods 消息为中心 – Tibco, MQSeries
EAI
消息传送,中介,流程,格式转换, 适配器 起先为专有性科技,后来逐渐采用基 于标准的科技
XML, HTTP, SOAP, XSLT
ERP
CRM
在 EAI 内部,可以很方便建立 “点对 点” 集成
SOA 平台搭建
业务 分析梳理
目标 蓝图 路线图
应用 改造
迭代
价值链 流程 服务 数据
应用改造 服务与流程开发
18
参考架构的指导
描绘架构的各个层,以及上 层部件和它们各自的关系
描述用来实现架构的各种软 件基础设施
提供软件基础设施和逻辑层 的映射
Logical 逻辑 Patterns 模式 Process 进程
数据访问
各内部应用系统
合作伙伴系统
数据源
9
两种 SOA 策略比较 自上而下 vs. 自下而上
优点
• • • • • 面向业务 标准化 可衡量 质量高 重用机会高,弹性大
战略性 Top-Down
缺点
• 范畴涵盖长期 • 开始投资较大 • 要求更高的纪律和技能 (治 理课题)
• 成效快 • 在部门级别实施 • 范畴小,容易控制风险
• “制式”的包软件
Legacy
ERP
CRM
Finance
• 创建可重用的业务流程,内含 定制的业务逻辑 • 用户与业务流程进行交互 • 对业务有正面影响力,而不像 传统 EAI,只是个技术的解决 方案
7
SOA 作为企业战略 益处和挑战
提供: • 更小的业务-IT 鸿沟
• 用 “服务” 作为共同的语义 • 项目周期更小 – 更多同步的机会
1
<在此处插入图片>
SOA 实施方法论
于建宏 Oracle 高级技术顾问
Agenda
• 集成模式 • SOA实施策略 • SOA工业化之路
3
集成手段几种模式
点对点 集成 传统 EAI
BPM 为中 心 的集成
SOA
焦点在应用 – 用户直接与应用 系统进行交互
Finance Legacy
应用整合工作在幕后进行,每 次采用一次性目的的点对点连 接 简单而廉价的方式,针对当下 出现的集成需求 导致逐渐复杂、没有弹性的架 构,维护成本高,抗拒业务改 变
getCustProfile
getCustAddress
getCustCredit
•
需要的 ESB 特性:
• 跨异构的消息骨干 • 基于内容的路由 (Content based routing) • 丰富服务功能,如格式转换 • 监控和报表 • 基于 SOA 的安全支持 • 服务工作量管理 • 消息可靠性保证 • 支持分布在跨企业各处的服务 • 服务发掘 • 负载均衡
最佳实践模式 描述逻辑架构中各个部件和 层次间交互的方式 进程视图描述架构中完整的 进程流 指导原则、政 策、做法
Implementation 实现
Deployment 部署
描述建议的部署配置,来部 署参考架构中的部件
*Adapted from “Architectural Blueprints – the 4+1 view model of software architecture”, Kruchten, P. (1997)
连接增生,应用相互之间必须 依赖彼此的数据和流程模型
ERP