施敏华
电子商务体系结构
Dzswtxjg-y@dlc.zju.edu.cn
0704028
13-14
,电子商务系统结构, 复习
施敏华 ( smh@cs.zju.edu.cn)
浙江杭州玉泉,浙江大学计算机学院,310027
Tel,0571- 87951256
内容组织和结构
设计与规划 应用架构
互联网的发展一日千里,电子商务的应用也不断发展。目前第二代基于
Web Services的系统结构刚刚出现,我们力求反映这个全新的系统结构。
系统基于商业模型、功能模型、顾客行为模型,以及 IT资源的四层模型
组成。介绍了新的应用程序开发模型和 Web Service架构,详细分析基于
Web Service架构中的三个要素,SOAP,WSDL和 UDDI。
系统结构
本课程讨论的是针对当前基于 Web Service架构的第二代电子商务系统的
规划、设计与实现。介绍了一种基于四层参考模型的、用于理解和分析电子商
务可测量性的定量方法。这个四层参考模型由商业模型、功能模型、顾客行为
模型,以及 IT资源模型组成。用于解释电子商务技术在性能模型、工作负载和
容量规划等方面的作用。详细说明了基于 Web的三层开发架构和 Web Service
架构中的三个要素,SOAP,WSDL和 UDDI。
电子商务系统结构的要点
上篇 系统设计 下篇 系统实现
?模型简述
?需求分析
?规划与设计决策
?性能建模及其分析
?应用程序开发架构
?SOAP
?WSDL
?UDDI
课程主要内容
? 电子商务模型分析
? 需求分析方法
? 系统规划设计
? 客户行为模型
? 性能模型及分析
? 应用程序开发模型
? SOAP / WSDL / UDDI
? 电子商务解决方案
商务模型
功能模型
客户模型
资源模型
商务过程要素
顾客行为模型
功能结构导航
IT体系结构和设备
商务视角
技术视角 内部因素
外部因素
这个参考模型由四层组成,分成两个主要单元。上层单元集中
于商务的特性以及通过电子商务站点提供服务的过程。下层单元集
中于客户与站点交互的方式以及他们对站点基础设施资源提出的要
求。参考模型的每一层都与两大类用于提供这一层定量描述的描述
符与规格相联系。
商业模型
? 一个产品、服务和信息流的结构,包括商业活动
者、他们的角色以及收入来源。例如许多公司采
用的一些最普遍的收入生成模型是,ⅰ )广告费
用,ⅱ )销售商品和服务,ⅲ )数字目录(内
容),ⅳ )处理 Web上两个当事人之间交易的费
用。
? 示例
? 在线零售
? 在线拍卖
? 门户查询入口
? 分销
? 服务
? 出版业
功能模型
? 一个电子商务公司向客户提供服务的交易过
程,这个过程是直接提供商业成果的一系列
连环活动
? 表征技术:过程流模型、分级活动模型、数
据流图、以及实体关系模型
? 站点导航结构和分析客户采用的不同可能路
径的框架
? 示例:在线拍卖公司
? 买卖双方的注册、拍卖的建立、安排和广告、
竞价、定价和拍卖完成、交易等
客户模型
? 捕获一个客户在访问一个电子商务站点时的
导航模式
? 描述了客户如何在站点中航行,并且允许客
户获得诸如在一次购物期间某一功能被调用
的次数、或者一次典型会话的平均长度之类
的行为度量标准
? 电子商务站点的性能取决于,
? 客户请求服务的模式
? 每个服务对站点资源的要求
? 客户访问站点的强度
资源模型
? 工作负荷模型
? 捕获客户请求服务的模式以及每个服务需求的
站点资源在时间方面的要求
? 性能模型
? 用于计算不同观点的站点度量标准。资源使用
度量标准的例子包括过程利用和数据库服务的
请求等待平均数等
? 高层度量标准如客户响应时间或站点每秒钟的
收入
定量方法分析电子商务模型
? 定量方法概述
? 容量、可靠性、可伸缩性以及安全性
? 定量方法分析电子商务站点的主要步骤
? 深入了解电子商务站点的结构
? 测量电子商务站点的系统性能
? 了解客户行为
? 表征电子商务站点的工作负荷
? 分析评价电子商务站点的性能
? 为电子商务站点预测期望的负荷
? 选择最划算的一个体系结构
电子商务的特点
? 电子商务使在更大的范围内进行交易提供了
便利
? 电子商务使交易和通信能够即时完成
? 客户具有更多的自主权
? 电子商务带来了更加猛烈的竞争
? 客户团体的出现
电子商务的优势
? 自动化交易,扩展了人的交易能力
? 电子商务大大扩展了交易的范围
? 电子商务带来了实时商务
建立电子商务式的思维模式
?,集成各种商业流程,便更好的服务客户”
? 变化比计划快,我们需要实时商务
? 扩展人的交易能力,我们需要动态商务
? 明确长期的发展目标和计划
? 短期独立的解决方案-, 组合却是高耗费、
复杂、独立、初级
? 流水线的方式组合 vs 将各个商业流程有
机的结合
?应用软件通过 Internet或 WAN分布在世界范围。
电子商务时代的挑战
?用户和应用程序间的连接
是非持久性的和低速的。
?应用程序所需的数据可能
分布在不同的机器上。
?数以百万 /千万计的用户,可能存在的突发事件 。
?千差万别的数据表示设备
?全球化的协同工作
电子商务问题
? 缓慢的下载速度
? 系统与网络的超载
? 安全、性能以及可用性
?,八秒规则”
? 基础设施和应用的飞速发展
? 各类网络
? 各类网络终端
? 软件技术
电子商务模型分析
? 服务质量影响因素
? 站点体系结构
? 网络容量
? 系统软件结构
? 安全体系
? 不可预测的公众行为
? 单层应用模型
? 两层客户 /服务器模型
? 三层应用程序模型
? Web Service
应用开发架构
n-Tier多层应用 系统架构
?业务逻辑处理层
?数据表示层
?数据存储层
?性能方面
?互联方面
?安全方面
?维护方面
n-Tier多层结构的优越性
性能方面
?数据库并发连接
?远程连接
?数据库的瓶颈效应
互连方面
?不同的客户端软件,互操作 问题
?需所有数据库的访问权,管理复杂
?增加连接数目,加重数据库的负担
维护方面
?不同的客户端软件,维护复杂
?数据模式的变动,影响巨大
如何应对普及计算的挑战
?CICS
?Enterprise JavaBean
?CORBA
?COM/DCOM/COM+
?Web Services
几种主要的多层应用系统架构
电子商务技术的变化
数据集成
DB+HTML
动态电子商务
发布
HTML
Web Services
应用集成
? 浏览互相链接的文档
? 通过手工操作处理采购等商业事务
? 下载文件
通过浏览器
手工操作
B2B
P2P
(Person
To
Person)
(Business
To
Business)
目前使用 Web的模式
应用集成
? 数据层的集成
? 数据共享
? 数据迁移
? 数据复制
? 业务功能的集成
? API的方式
? 基于组件方法的功能调用
? 基于消息 (MQ)的集成
? 基于 WebService的功能集成
什么是动态电子商务?
IBM曾为动态电子商务下了一个简单定义是:,着重于 B2B
的综合性和基础设施组成上的下一代电子商务,通过调节因特网标
准和通用基础设施为内部和外部企业计算创造最佳效益。”
动态电子商务预想了这样一个因特网,商业实体能在其自身的
域内以及在贸易合伙人之间有步骤地管理交互作用。从发现新的合
伙人到与另一商务实体的集成,动态电子商务着重程序对程序的交
互作用,而不是早期 B2C 电子商务阶段占主导地位的客户对程序
的交互作用。
动态电子商务实现的 关键是 Web Services。 Web Services
就是原来的组件技术思想在 Internet时代中的进一步发展,它集成
了 CORBA,COM/DCOM等各种组件模型技术,是原有各种组件
技术的继承和发展。它不仅已作为动态电子商务的基础,也是“电
子商务即取即用”技术发展的基础。
? 通过程序自动启动和处理商务事务,而并
非使用浏览器
? 能够在一个分布式的计算环境中动态地描
述、发布、发现和调用
? 许多基于 Web Service的新型应用将出现
完全基于 XML以及
其他相关的 Internet标准
Web Service是使用 Web的崭新模式
什么是 XML Web Service?
通过标准的 Web 协议( HTTP)可
编程访问的 WEB组件
开放的
Internet
传输协议
XML Web
service
SOAP ? SOAP (简单对象访问协议) – 用 XML 实现 Web service 的标准协议
WSDL
XML Web services
Description Language
? WSDL – 描述 Web service 的语言规范,相
当于访问 Web service 的接口
? 基于开放的 Internet 协议 XML and HTTP
UDDI
Universal Description,
Discovery and Integration
? UDDI - Web service 的黄页
Internet,IPv4,IPv6
Transport,HTTP,FTP,SMTP
Messaging,SOAP
Service Description,WSDL
Service Discovery,Integration,UDDI
Workflow,WSFL
Routing,Reliability and Transaction,
M
ana
gem
ent
Qualit
y of
S
er
vice
Secur
ity
Web Service层次模型
Web Service会成功吗?
美国 InfoWorld杂志在 2001年进行了一次有关 Web Service应
用的调查,结果显示:在被调查的企业中,有 38%的企业希望在
未来 3个月内实施 Web Service战略; 11.4%的企业认为 Web
Service对企业的发展非常重要。目前,业界最重要的软、硬件厂
商都已经宣布了对 Web Service的支持。
Web Services Time Line
Web Services tooling delivered,Developers buy new Service-oriented
development tools,Begin building real world Web Services,
Business Web Services begin to appear in large numbers,Mass
consumer B2C Web-services already in place,
UDDI Registry adoption Grows in significance,Private registries
proliferate to support private exchanges,Government usage of Web
Services accelerates significantly,
Business adoption of Web Services based models and Service Centric
Computing enters adolescence,Private registries still dominate,New
revenue generation models and channel opportunities are
commonplace,40% of financial Services Transactions leverage Web
Services Models,35% of online government Services delivered as Web
Services,
Public UDDI Registries gain attention as Public Exchanges re-emerge,
Dynamic Services gain more attention,
2001
2002
2003
2004
2005
Gartner Group
参考网址
? www.uddi.org
? www.webservices.org
? MSDN Online Web Services Developer
Resources
? http://msdn.microsoft.com/webservices/
? IBM developerWorks/Web Service Zone
? http://www-
106.ibm.com/developerworks/webservice/
电子商务随需应变
―电子商务随需应变” (e—business on demand)。简单地说
,就是企业用户在需要企业管理程序、商业数据库资料时,不必再
独立投资建立内部的全套软件和程序,只需到网上企业电子商务应
用软件库里去调一个出来用。
这样做的好处很明显,首先,不用再付软件和程序本身的高额
费用,而只需付软件使用费,成本大大降低,使用更加简便和经济
。其次,企业的电子商务软件在使用过程中,可以更直接地得到
IBM专家的协助和技术支持,效率可以大大提高。
这一新概念最值得关注的有两点:第一是整合,就是说给你的
是一套餐具,包括筷子、刀子、叉子,让吃中餐、西餐的人各取所
需。第二,对探索电子商务的赚钱模式是一大突破。
电子商务是一个长期以来被无数人看好的概念,但看好却不赚
钱,甚至成为导致高科技泡沫破灭的替罪羊,最关键的症结所在就
是它未能在普及和赚钱之间找到一个最佳切入点。
26
24
8
4 HPSS
5
HPSS
HPSS UniTree
External
Networks
External
Networks External Networks
External
Networks
Site Resources Site Resources
Site Resources Site Resources
NCSA/PACI
8 TF
240 TB
SDSC
4.1 TF
225 TB
Caltech Argonne
下一代 IT系统结构-网格计算
电子商务系统需求分析
需求收集的过程并不是一蹴而就的,会是一
个反复、反复、再反复的过程。
是商业需求促成了电子商务这一方法的产生,
而不要让技术来引导着电子商务的发展。
我们不光要收集商业需求,与之相关的还有一
系列其他的需求。它们包括系统实现中的阻碍,
已经具有的条件,以及功能性的和技术性的需求。
这些需求是客户和解决方案提供商共同讨论商定
的,或者是在解决方案中必须要用到的一般普适
条件。
你是否做好了准备?
? 网络系统和服务器
? 面向对象的技术
? J2EE 或者,NET技术平台
? 应用软件开发工具
? 相关于分布式数据的数据库
? 事务处理的技术
? 安全性
? 标准、规范
? 所有的决定者对于采用新技术的态度。
? 你愿意承受的风险等级。
理解商业驱动力
? 将会增加顾客的数量吗?,
? 将会降低运作的成本吗?,
? 将会增进公司的形象吗?,
? 将会使我们的产品更快的推向市场吗?,
? 将会使我们的商业更具有竞争性吗?,
? 将会减少我们的发展环节吗?,
? 将会增加收入获减少开支吗?,
理解商业驱动力
? 将会增强与客户的关系吗?
? 将会增强库存和产品的管理吗?
? 将会增强通道的联系吗?
? 将会提高客户服务吗?
? 将会使我们的雇员在团队和协作中更有效吗?
? 将会是我们开拓新的市场吗?
? 将会降低发送的成本吗?
解决方案的工作框图
? 了解现存的环境和需求
? 评估商业的设施
? 提供适当的培训
? 将目标分成长期和短期的
? 确定观点
? 讨论技术性的更替
? 提出下一步该如何进行
电子商务系统规划与设计
? 电子商务应用的各个阶段
? 商务分析阶段
? 规划设计阶段
? 建设变革阶段
? 整合运行阶段
? 完善提高阶段
系统规划的几个有力工具
? 客户行为模型
? 客户访问模型
? 系统容量规划
客户行为模型
? 概述
? 客户模型、工作负荷模型以及资源模型之间
的联系
? 实例
客户模型 工作负荷模型 资源模型
客户行为影响着
的问题
网站的工作负荷 /结构模型
及其变化所带来的问题
1网站收益
2响应时间
3吞吐能力
客户行为模型图 (CBMG)
? 概述(静态,动态)
? 建立客户行为模型图
? 确定电子商务站点向客户提供的功能集合
? 根据资源消耗来精简功能集合
? 确定状态间的转换
电子商务系统容量规划
如:响应时间 <2秒,
成功率 >99.5% 顾客 服务水平
满意度
特定的技术
和标准
成本
约束
管理
如,UNIX服务器,
Oracle DBMS,
SSL和 SET
如:启动成本 <5.5百万,
维护费用 <1.6百万 /year
足够的容量
足够容量的定义
? 服务水平满意度( SLAs)
? 这是性能(例如,响应时间和吞吐量)和可用
性度量标准的上下界限。 SLAs的例子包括, 服
务方响应时间 ≤ 2秒,,, 站点可用性 >
99.5%”和, 会话吞吐量 ≥ 30,000个会话 /每
天, 。
? 8秒钟规则
? 特定的技术和标准
? 成本约束
容量规划方法论
商业发展规划
功能发展规划
顾客行为
发展规划
IT基础结构
的发展规划
商务和功能设计
顾客行为设计
IT资源设计
商务层
商业描述
商业发展规划
功能发展规划
商业模
型
功能分析
功能模
型
客户行为层
客户行为描述
客户行为发展规划 客户行为模型
资源层
IT环境描述
IT基础架构发展规划 IT基础架构 工作负载
成本建模
工作负载描述说明
工作负载预测
工作负载模型
性能建模
成本模型 性能模型 校准和确认
假设性分析
EB系统规划与设计的一般过程
? 商务模型规划
? 第一阶段:分析企业的核心业务流程和商务活
动的基本模式类型,确定企业未来的商务模式,
包括企业的服务对象、企业的核心业务及其赢
利模式、企业业务的增值点和延伸范围等
? 第二阶段:规划企业的商务模型。通过对企业
核心商务流程进行分析,以缩短企业产品供应
链、加速客户服务响应、提高客户个性化服务、
提高企业信息资源的共享和增值为目标,抽象
企业业务流的基本逻辑组成单位,并界定其相
互关系
EB系统规划与设计的一般过程
? 商务系统规划
? 企业的核心业务功能
? 关键业务流程
? 商务系统的体系架构
? 规划商务系统的基本组成部分
? 各个层次的联系
? 各个组成部分的作用
? 商务系统的结构
? 应用软件系统的拓扑结构
? 基础网络环境和架构
? 安全交易环境等
EB系统规划与设计的合格要求
? 对企业业务流, 应用平台, 基础网络架构都
有清晰的描述
? 各个层次间有明确的分工, 能为各层次的开
发设计人员所接受和理解
? 能抽象出系统各部分间的接口特征, 从而为
可重用组件提供指导
? 可以包容各种服务平台, 中间件和应用软件
? 具备良好的可扩展性和可维护性
抽象商务应用模型
商务模型
应用模型
应用表达层 数据层
商务逻辑层
规划应用平台
核心商业逻辑
应用平台
系统基础设施环境
网络基础设施
支付认证接口
应用平台
商务服务平台
商务支持平台
基础支持平台
客户端
(client) 浏览器 传统客户机 移动设备 其他客户端 。。。。。
电子商务应用表达平台( Web 服务器,WAP等)
商务应用层( B2B,B2C等)
商务服务平台( CRM,SCM、交易市场、通信等)
商务支持平台(内容管理、目录管理、搜索引擎等)
基础支持平台
应用开发环境
,开发工具
-C/C++
-Java Beans
-Java
-applet……
高性能, 高可
靠性环境
-负载平衡
-错误恢复
-自动备份
………
系统管理
- 主机系统管
理
-网络管理
-安全管理
系统 / 应 用集
成支持环境
-传输
-消息
-事务处理
基础设施
操作系统、数据库系统、计算机系统、计算机网络
安全保障环境
认证中心
支付网关
企业 ERP
数据库系统
其他信息资
源
性能建模及其分析
? 性能模型的概念
? 性能模型的作用
? 性能模型的需求信息
? 性能模型的基本原理
? 建立简单的性能模型
性能模型 的概念
? 性能模型表达了工作负载使用系统资源的方
法,描述了决定系统性能的主要因素。这些
模型使用由资源模型和工作负载模型提供的
信息。性能模型被用来计算传统的性能度量
标准如响应时间、吞吐量、利用率和平均队
列长度,以及新的面向商务的性能度量标准,诸如收入总额或者损失总额 P=K/r
? 可以分为两个范畴:分析和仿真模型
? 分析模型通过公式来详细说明系统的不同部
件之间的交互 。 例如 HTTP事务响应的最小
可能时间,RTmin = RTT + 请求时间 min + 站
点处理时间 + 答复时间 min,
性能模型的作用
? 电子商务环境下研究资源分配问题的一个基本
的工具
? 分析分布式应用程序的性能和评估网络的影响
? 可以通过回答假设性分析问题,而不是在生产
环境中进行任何变化,来帮助发现性能问题
? 可以用于预测目的。它们可以回答关于性能影
响的假设性分析问题,这些问题是由于电子商
务站点的组成部件、元素和工作负载的改变而
引起的。性能模型有助于分析将来的贸易场景
建模 /预测范例
性能分析 性能建模 性能预测
真实系
统
收集数据
性能测量
建立模型
获得参数
解答模型
验证模型
设计系
统的性
能
确认模型
修改模型
服务时间和服务需求
? 电子商务事务的定义
? 服务时间 构成
? 服务器上的服务时间
? 通信网络的服务时间
? 队列、等待时间和响应时间
性能定律
? 利用率定律
? 利用率 =到达速率 *每事务平均服务时间 /队列资
源数
? 强制流模型
? 平均吞吐量 =平均访问对列数 *单位时间完成事
务数
? 服务需求定律
? 服务需求 =系统吞吐量 *利用率
? Little定律
? 黑盒子中的客户的平均数量 =黑盒子的吞吐率 *
客户平均停留时间
瓶颈和可扩展性分析
? 渐进性的界限
? 开放式模型
? 封闭式模型
小结
? ? 模型是系统的表示, 它必须简单和能够提取所研究
的系统的最相关的特性 。 特别的, 性能模型表达了工作负
载使用系统资源的方法, 并且提取了决定系统性能的最主
要的因素 。
? ? 我们使用分析性能模型, 它通过公式详细描述了系
统各个部件之间的交互 。
? ? 性能模型有助于基础结构设计, 资源分配问题, 系
统协调和容量规划 。
? ? 一个电子商务事务使用多个服务器 。 事务的总的响
应时间有两个主要的部分构成:服务时间和等待时间 。
? ? 在通信网络中, 我们给出了多个公式来计算平均服
务时间 。
? ? 我们通过简单和实际的电子商务的例子来描述了几
个重要的关系, 包括利用率定律, 服务需求定律, 强制流
定律和 Little定律, 以及它们的使用 。
Internet,IPv4,IPv6
Transport,HTTP,FTP,SMTP
Messaging,SOAP
Service Description,WSDL
Service Discovery,Integration,UDDI
Workflow,WSFL
Routing,Reliability and Transaction,
M
ana
gem
ent
Qualit
y of
S
er
vice
Secur
ity
Web Service层次模型
Web Service发展阶段
? 1.技术显现
? 2.不断膨胀的期望期
? 3.希望破灭之后的醒悟期
? 4.豁然开朗的应用发展期
? 5.大量的工业化生产期
? XML技术位于第四阶段
? web service却刚好处于第二阶段也就是
“泡沫”的顶峰
Webservice VS CORBA
? Item WebServices Corba
? Protocol SOAP,http,Schema IIOP,GIOP
? Location identifiers URLs IORs,URLs
? Interface define WSDL IDL
? Naming,directory UDDI Naming Service
? CORBA适合用于后台分布式服务器之间的互
联。 webservice是广域网内客户端和服务器
端一种比较好的交互方式。
何时使用 Web Service
? 1.跨越防火墙的通信
? 2.应用程序集成
? 3.B2B的集成
? 4.软件重用
? 5.用 Web service来集成各种应用中的功能,
为用户提供一个统一的界面
组件软件
? 部分升级
? 补丁
? 缩短软件的更新周期
? 增加了异构软件的可能
? 标准接口、标准规范、标准协议
? 动态组合,提高软件生产力
? 符合现代软件的发展要求
软件组件
? 关键:接口设计
? 接口不变性
? 接口可扩展性
? 对基础设施的依赖
? COM,CORBA,..,
? 内部独立设计、独立开发
? 独立发布、独立测试
基础设施:组件体系
? COM(Component Object Model)
? 93年发布,脱胎于 MS的 OLE
? 规范 +实现
? CORBA(Common Object Request
Broker Architecture)
? 91年第 1版,OMG(Object Management
Group)
? 规范 +实现
? EJB(Enterprise Java Bean)
? 98年第 1版,sun
? 规范 +实现
COM:组件对象模型
? 建立在二进制层次上的标准
? 许多概念与 C++的特征相似,如 vtable
? 程序与程序之间的通信建立在此基础上
? COM规范
? 平台无关
? 定义了大量的标准接口用于各种用途
? COM实现
? 平台相关
? Windows实现了规范要求以及许多辅助功能
COM,COM体系
? 基本的功能
? 扩展功能
? 连接点
? 结构化存储
? 名字服务
? 自动化
? 其他
? COM+
COM,COM+
? 建立在 COM的基础上,COM的自
然延伸
? Services
? 事件服务
? 队列服务
? 事务服务
? 负载平衡
? 其他
COM:应用
? OLE
? ActiveX control
? 脚本功能扩展
? OLE DB
? ADSI
? ASP
? 其他
COM:分布式应用
? COM/COM+为基于 Windows的分
布式应用提供了基础设施
? Transaction
? Security
? OLE DB
? Web
? 集成 Active Directory
? 管理功能
CORBA
? OMG,800多家厂商联合制定的标准
? 91年 1.0,主要是 C语言映射
? 95年 2.0,加入 IIOP
? 目前最新版本 3.0
? CORBA规范
? 制订了互操作规范,上层标准协议
? 一系列映射到多种语言的规范
? 各种服务相关的规范
? CORBA实现,ORB
CORBA体系结构
CORBA:跨平台、跨语言
? 典型的语言,C++语言,Java语言、
Smalltalk
? 多种平台
? 关键,IOR(Interoperable Object reference)
? ORB实现
部分 ORB实现
? 商业 ORB
? Orbix,IONA公司
? Visibroker,Inprise公司,4.0版完全支持 2.3规范
Netscape communicator浏览器嵌入 Visibroker
? 自由 ORB
? ORBit,遵循 CORBA 2.2规范,支持 C语言,性能较
高
? mico,GNU,OpenSource
? TAO,美国华盛顿大学分布式对象计算研究小组
? omniORB,AT&T剑桥实验室
? 国产 ORB
? 国防科大的嵌入式 CORBA(eBus)
? 东南大学的 ORBUS
CORBA:服务
? 命名服务
? 层次命名
? 绑定
? Trading Service
? 功能更强、使用更灵活的对象查询服务
? 事件服务
? 事件发送方和接受方之间的 decouple
Enterprise Java Bean
EJB体系是 JAVA平台上的 服务器端 组件模型
?目标 是最大限度地减轻分布式应用程序的开发工作。
?安全, 事务处理 尽可能不再由手工编码的方式实现,
而是通过使用 JavaBean自身的标记实现。
组件开发中的参与者 (Role)
?提供者 (Provider)-设计 Bean
?安装者 (Deployer)-将 EJB类安装到 EJB容器中
?应用程序开发者 (Application Assembler)
?容器提供者( Container Provider)-提供运行环境
.Net技术概览
? 展示层 – ASP.Net,Windows Forms
? 中间层 -,Net组件
? 中间层可使用的企业服务
? System.EnterprisesServices
? 事务服务 MTS
? 消息服务 MSMQ
? 目录服务 ADSI,UDDI
? 对象池 Object Pooling
? 异步组件 Queued Component
? 数据层 – ADO.Net
? 远层调用 -,Net Remoting/ Web Service
? 利用现有资源 -,Net Interop / Web Service /BizTalk
应用程序服务器
Servlet/JSP 引擎
EJB Server
客户端
Browse
数据库服务器
HTTP
JDBC
DB2
Model
Controller View
基于 EJB 的三层系统架构
J2EE技术概览
? 展示层 – ServLet/JSP
? 中间层 – EJB
? 中间层可用的企业服务
? 事务服务 JTA
? 目录服务 JNDI
? 消息服务 JMS
? 异步组件 Message-Driven EJB
? 数据层 - JDBC
? 远程调用 – RMI/IIOP
? 使用现有资源 - JCA
对 XML的支持
? J2EE标准未包括对 XML Web服务的支持
? 各个厂商提供自己的方案
? 支持 UDDI/WSDL/SOAP
? WSI组织保证互操作性
? SUN的方案
? JAXP/JAXB/JAXM/JAXR/JWSDL
? JAX/RPC
? JAX* – Java API for XML *
技术比较结论
?,Net和 J2EE应用有着相似的架构
?,Net和 J2EE有相应的主要技术
?,Net所有技术来自 Microsoft
? J2EE的技术有多个厂商的实现
?,Net和 J2EE都可以满足大多数应用的需求
? 主要的差别不在技术的可行性上
? 开发效率
? 性能
? 成本
? 稳定性
Web站点开发集成解决方案
? EB系统基础设施的三个考虑因素
? 安全可靠性、可扩展性、灵活性
? 合适的应用框架基础
? IBM E-Business On Demand Integration解决方
案
? Integrated:企业内外的数据、信息、应用、流程有机整
合
? Open:遵循业界公认的最新的技术标准和规范
? Virtualized:在分布式计算环境下共享所有的 IT资源
? Autonomic:使系统做到 self-protecting,self-optimizing,
self-healing和 self-configuring
试卷情况说明
? 题型、分值
? 内容
? 考试形式 —开卷
电子商务体系结构
Dzswtxjg-y@dlc.zju.edu.cn
0704028
13-14
,电子商务系统结构, 复习
施敏华 ( smh@cs.zju.edu.cn)
浙江杭州玉泉,浙江大学计算机学院,310027
Tel,0571- 87951256
内容组织和结构
设计与规划 应用架构
互联网的发展一日千里,电子商务的应用也不断发展。目前第二代基于
Web Services的系统结构刚刚出现,我们力求反映这个全新的系统结构。
系统基于商业模型、功能模型、顾客行为模型,以及 IT资源的四层模型
组成。介绍了新的应用程序开发模型和 Web Service架构,详细分析基于
Web Service架构中的三个要素,SOAP,WSDL和 UDDI。
系统结构
本课程讨论的是针对当前基于 Web Service架构的第二代电子商务系统的
规划、设计与实现。介绍了一种基于四层参考模型的、用于理解和分析电子商
务可测量性的定量方法。这个四层参考模型由商业模型、功能模型、顾客行为
模型,以及 IT资源模型组成。用于解释电子商务技术在性能模型、工作负载和
容量规划等方面的作用。详细说明了基于 Web的三层开发架构和 Web Service
架构中的三个要素,SOAP,WSDL和 UDDI。
电子商务系统结构的要点
上篇 系统设计 下篇 系统实现
?模型简述
?需求分析
?规划与设计决策
?性能建模及其分析
?应用程序开发架构
?SOAP
?WSDL
?UDDI
课程主要内容
? 电子商务模型分析
? 需求分析方法
? 系统规划设计
? 客户行为模型
? 性能模型及分析
? 应用程序开发模型
? SOAP / WSDL / UDDI
? 电子商务解决方案
商务模型
功能模型
客户模型
资源模型
商务过程要素
顾客行为模型
功能结构导航
IT体系结构和设备
商务视角
技术视角 内部因素
外部因素
这个参考模型由四层组成,分成两个主要单元。上层单元集中
于商务的特性以及通过电子商务站点提供服务的过程。下层单元集
中于客户与站点交互的方式以及他们对站点基础设施资源提出的要
求。参考模型的每一层都与两大类用于提供这一层定量描述的描述
符与规格相联系。
商业模型
? 一个产品、服务和信息流的结构,包括商业活动
者、他们的角色以及收入来源。例如许多公司采
用的一些最普遍的收入生成模型是,ⅰ )广告费
用,ⅱ )销售商品和服务,ⅲ )数字目录(内
容),ⅳ )处理 Web上两个当事人之间交易的费
用。
? 示例
? 在线零售
? 在线拍卖
? 门户查询入口
? 分销
? 服务
? 出版业
功能模型
? 一个电子商务公司向客户提供服务的交易过
程,这个过程是直接提供商业成果的一系列
连环活动
? 表征技术:过程流模型、分级活动模型、数
据流图、以及实体关系模型
? 站点导航结构和分析客户采用的不同可能路
径的框架
? 示例:在线拍卖公司
? 买卖双方的注册、拍卖的建立、安排和广告、
竞价、定价和拍卖完成、交易等
客户模型
? 捕获一个客户在访问一个电子商务站点时的
导航模式
? 描述了客户如何在站点中航行,并且允许客
户获得诸如在一次购物期间某一功能被调用
的次数、或者一次典型会话的平均长度之类
的行为度量标准
? 电子商务站点的性能取决于,
? 客户请求服务的模式
? 每个服务对站点资源的要求
? 客户访问站点的强度
资源模型
? 工作负荷模型
? 捕获客户请求服务的模式以及每个服务需求的
站点资源在时间方面的要求
? 性能模型
? 用于计算不同观点的站点度量标准。资源使用
度量标准的例子包括过程利用和数据库服务的
请求等待平均数等
? 高层度量标准如客户响应时间或站点每秒钟的
收入
定量方法分析电子商务模型
? 定量方法概述
? 容量、可靠性、可伸缩性以及安全性
? 定量方法分析电子商务站点的主要步骤
? 深入了解电子商务站点的结构
? 测量电子商务站点的系统性能
? 了解客户行为
? 表征电子商务站点的工作负荷
? 分析评价电子商务站点的性能
? 为电子商务站点预测期望的负荷
? 选择最划算的一个体系结构
电子商务的特点
? 电子商务使在更大的范围内进行交易提供了
便利
? 电子商务使交易和通信能够即时完成
? 客户具有更多的自主权
? 电子商务带来了更加猛烈的竞争
? 客户团体的出现
电子商务的优势
? 自动化交易,扩展了人的交易能力
? 电子商务大大扩展了交易的范围
? 电子商务带来了实时商务
建立电子商务式的思维模式
?,集成各种商业流程,便更好的服务客户”
? 变化比计划快,我们需要实时商务
? 扩展人的交易能力,我们需要动态商务
? 明确长期的发展目标和计划
? 短期独立的解决方案-, 组合却是高耗费、
复杂、独立、初级
? 流水线的方式组合 vs 将各个商业流程有
机的结合
?应用软件通过 Internet或 WAN分布在世界范围。
电子商务时代的挑战
?用户和应用程序间的连接
是非持久性的和低速的。
?应用程序所需的数据可能
分布在不同的机器上。
?数以百万 /千万计的用户,可能存在的突发事件 。
?千差万别的数据表示设备
?全球化的协同工作
电子商务问题
? 缓慢的下载速度
? 系统与网络的超载
? 安全、性能以及可用性
?,八秒规则”
? 基础设施和应用的飞速发展
? 各类网络
? 各类网络终端
? 软件技术
电子商务模型分析
? 服务质量影响因素
? 站点体系结构
? 网络容量
? 系统软件结构
? 安全体系
? 不可预测的公众行为
? 单层应用模型
? 两层客户 /服务器模型
? 三层应用程序模型
? Web Service
应用开发架构
n-Tier多层应用 系统架构
?业务逻辑处理层
?数据表示层
?数据存储层
?性能方面
?互联方面
?安全方面
?维护方面
n-Tier多层结构的优越性
性能方面
?数据库并发连接
?远程连接
?数据库的瓶颈效应
互连方面
?不同的客户端软件,互操作 问题
?需所有数据库的访问权,管理复杂
?增加连接数目,加重数据库的负担
维护方面
?不同的客户端软件,维护复杂
?数据模式的变动,影响巨大
如何应对普及计算的挑战
?CICS
?Enterprise JavaBean
?CORBA
?COM/DCOM/COM+
?Web Services
几种主要的多层应用系统架构
电子商务技术的变化
数据集成
DB+HTML
动态电子商务
发布
HTML
Web Services
应用集成
? 浏览互相链接的文档
? 通过手工操作处理采购等商业事务
? 下载文件
通过浏览器
手工操作
B2B
P2P
(Person
To
Person)
(Business
To
Business)
目前使用 Web的模式
应用集成
? 数据层的集成
? 数据共享
? 数据迁移
? 数据复制
? 业务功能的集成
? API的方式
? 基于组件方法的功能调用
? 基于消息 (MQ)的集成
? 基于 WebService的功能集成
什么是动态电子商务?
IBM曾为动态电子商务下了一个简单定义是:,着重于 B2B
的综合性和基础设施组成上的下一代电子商务,通过调节因特网标
准和通用基础设施为内部和外部企业计算创造最佳效益。”
动态电子商务预想了这样一个因特网,商业实体能在其自身的
域内以及在贸易合伙人之间有步骤地管理交互作用。从发现新的合
伙人到与另一商务实体的集成,动态电子商务着重程序对程序的交
互作用,而不是早期 B2C 电子商务阶段占主导地位的客户对程序
的交互作用。
动态电子商务实现的 关键是 Web Services。 Web Services
就是原来的组件技术思想在 Internet时代中的进一步发展,它集成
了 CORBA,COM/DCOM等各种组件模型技术,是原有各种组件
技术的继承和发展。它不仅已作为动态电子商务的基础,也是“电
子商务即取即用”技术发展的基础。
? 通过程序自动启动和处理商务事务,而并
非使用浏览器
? 能够在一个分布式的计算环境中动态地描
述、发布、发现和调用
? 许多基于 Web Service的新型应用将出现
完全基于 XML以及
其他相关的 Internet标准
Web Service是使用 Web的崭新模式
什么是 XML Web Service?
通过标准的 Web 协议( HTTP)可
编程访问的 WEB组件
开放的
Internet
传输协议
XML Web
service
SOAP ? SOAP (简单对象访问协议) – 用 XML 实现 Web service 的标准协议
WSDL
XML Web services
Description Language
? WSDL – 描述 Web service 的语言规范,相
当于访问 Web service 的接口
? 基于开放的 Internet 协议 XML and HTTP
UDDI
Universal Description,
Discovery and Integration
? UDDI - Web service 的黄页
Internet,IPv4,IPv6
Transport,HTTP,FTP,SMTP
Messaging,SOAP
Service Description,WSDL
Service Discovery,Integration,UDDI
Workflow,WSFL
Routing,Reliability and Transaction,
M
ana
gem
ent
Qualit
y of
S
er
vice
Secur
ity
Web Service层次模型
Web Service会成功吗?
美国 InfoWorld杂志在 2001年进行了一次有关 Web Service应
用的调查,结果显示:在被调查的企业中,有 38%的企业希望在
未来 3个月内实施 Web Service战略; 11.4%的企业认为 Web
Service对企业的发展非常重要。目前,业界最重要的软、硬件厂
商都已经宣布了对 Web Service的支持。
Web Services Time Line
Web Services tooling delivered,Developers buy new Service-oriented
development tools,Begin building real world Web Services,
Business Web Services begin to appear in large numbers,Mass
consumer B2C Web-services already in place,
UDDI Registry adoption Grows in significance,Private registries
proliferate to support private exchanges,Government usage of Web
Services accelerates significantly,
Business adoption of Web Services based models and Service Centric
Computing enters adolescence,Private registries still dominate,New
revenue generation models and channel opportunities are
commonplace,40% of financial Services Transactions leverage Web
Services Models,35% of online government Services delivered as Web
Services,
Public UDDI Registries gain attention as Public Exchanges re-emerge,
Dynamic Services gain more attention,
2001
2002
2003
2004
2005
Gartner Group
参考网址
? www.uddi.org
? www.webservices.org
? MSDN Online Web Services Developer
Resources
? http://msdn.microsoft.com/webservices/
? IBM developerWorks/Web Service Zone
? http://www-
106.ibm.com/developerworks/webservice/
电子商务随需应变
―电子商务随需应变” (e—business on demand)。简单地说
,就是企业用户在需要企业管理程序、商业数据库资料时,不必再
独立投资建立内部的全套软件和程序,只需到网上企业电子商务应
用软件库里去调一个出来用。
这样做的好处很明显,首先,不用再付软件和程序本身的高额
费用,而只需付软件使用费,成本大大降低,使用更加简便和经济
。其次,企业的电子商务软件在使用过程中,可以更直接地得到
IBM专家的协助和技术支持,效率可以大大提高。
这一新概念最值得关注的有两点:第一是整合,就是说给你的
是一套餐具,包括筷子、刀子、叉子,让吃中餐、西餐的人各取所
需。第二,对探索电子商务的赚钱模式是一大突破。
电子商务是一个长期以来被无数人看好的概念,但看好却不赚
钱,甚至成为导致高科技泡沫破灭的替罪羊,最关键的症结所在就
是它未能在普及和赚钱之间找到一个最佳切入点。
26
24
8
4 HPSS
5
HPSS
HPSS UniTree
External
Networks
External
Networks External Networks
External
Networks
Site Resources Site Resources
Site Resources Site Resources
NCSA/PACI
8 TF
240 TB
SDSC
4.1 TF
225 TB
Caltech Argonne
下一代 IT系统结构-网格计算
电子商务系统需求分析
需求收集的过程并不是一蹴而就的,会是一
个反复、反复、再反复的过程。
是商业需求促成了电子商务这一方法的产生,
而不要让技术来引导着电子商务的发展。
我们不光要收集商业需求,与之相关的还有一
系列其他的需求。它们包括系统实现中的阻碍,
已经具有的条件,以及功能性的和技术性的需求。
这些需求是客户和解决方案提供商共同讨论商定
的,或者是在解决方案中必须要用到的一般普适
条件。
你是否做好了准备?
? 网络系统和服务器
? 面向对象的技术
? J2EE 或者,NET技术平台
? 应用软件开发工具
? 相关于分布式数据的数据库
? 事务处理的技术
? 安全性
? 标准、规范
? 所有的决定者对于采用新技术的态度。
? 你愿意承受的风险等级。
理解商业驱动力
? 将会增加顾客的数量吗?,
? 将会降低运作的成本吗?,
? 将会增进公司的形象吗?,
? 将会使我们的产品更快的推向市场吗?,
? 将会使我们的商业更具有竞争性吗?,
? 将会减少我们的发展环节吗?,
? 将会增加收入获减少开支吗?,
理解商业驱动力
? 将会增强与客户的关系吗?
? 将会增强库存和产品的管理吗?
? 将会增强通道的联系吗?
? 将会提高客户服务吗?
? 将会使我们的雇员在团队和协作中更有效吗?
? 将会是我们开拓新的市场吗?
? 将会降低发送的成本吗?
解决方案的工作框图
? 了解现存的环境和需求
? 评估商业的设施
? 提供适当的培训
? 将目标分成长期和短期的
? 确定观点
? 讨论技术性的更替
? 提出下一步该如何进行
电子商务系统规划与设计
? 电子商务应用的各个阶段
? 商务分析阶段
? 规划设计阶段
? 建设变革阶段
? 整合运行阶段
? 完善提高阶段
系统规划的几个有力工具
? 客户行为模型
? 客户访问模型
? 系统容量规划
客户行为模型
? 概述
? 客户模型、工作负荷模型以及资源模型之间
的联系
? 实例
客户模型 工作负荷模型 资源模型
客户行为影响着
的问题
网站的工作负荷 /结构模型
及其变化所带来的问题
1网站收益
2响应时间
3吞吐能力
客户行为模型图 (CBMG)
? 概述(静态,动态)
? 建立客户行为模型图
? 确定电子商务站点向客户提供的功能集合
? 根据资源消耗来精简功能集合
? 确定状态间的转换
电子商务系统容量规划
如:响应时间 <2秒,
成功率 >99.5% 顾客 服务水平
满意度
特定的技术
和标准
成本
约束
管理
如,UNIX服务器,
Oracle DBMS,
SSL和 SET
如:启动成本 <5.5百万,
维护费用 <1.6百万 /year
足够的容量
足够容量的定义
? 服务水平满意度( SLAs)
? 这是性能(例如,响应时间和吞吐量)和可用
性度量标准的上下界限。 SLAs的例子包括, 服
务方响应时间 ≤ 2秒,,, 站点可用性 >
99.5%”和, 会话吞吐量 ≥ 30,000个会话 /每
天, 。
? 8秒钟规则
? 特定的技术和标准
? 成本约束
容量规划方法论
商业发展规划
功能发展规划
顾客行为
发展规划
IT基础结构
的发展规划
商务和功能设计
顾客行为设计
IT资源设计
商务层
商业描述
商业发展规划
功能发展规划
商业模
型
功能分析
功能模
型
客户行为层
客户行为描述
客户行为发展规划 客户行为模型
资源层
IT环境描述
IT基础架构发展规划 IT基础架构 工作负载
成本建模
工作负载描述说明
工作负载预测
工作负载模型
性能建模
成本模型 性能模型 校准和确认
假设性分析
EB系统规划与设计的一般过程
? 商务模型规划
? 第一阶段:分析企业的核心业务流程和商务活
动的基本模式类型,确定企业未来的商务模式,
包括企业的服务对象、企业的核心业务及其赢
利模式、企业业务的增值点和延伸范围等
? 第二阶段:规划企业的商务模型。通过对企业
核心商务流程进行分析,以缩短企业产品供应
链、加速客户服务响应、提高客户个性化服务、
提高企业信息资源的共享和增值为目标,抽象
企业业务流的基本逻辑组成单位,并界定其相
互关系
EB系统规划与设计的一般过程
? 商务系统规划
? 企业的核心业务功能
? 关键业务流程
? 商务系统的体系架构
? 规划商务系统的基本组成部分
? 各个层次的联系
? 各个组成部分的作用
? 商务系统的结构
? 应用软件系统的拓扑结构
? 基础网络环境和架构
? 安全交易环境等
EB系统规划与设计的合格要求
? 对企业业务流, 应用平台, 基础网络架构都
有清晰的描述
? 各个层次间有明确的分工, 能为各层次的开
发设计人员所接受和理解
? 能抽象出系统各部分间的接口特征, 从而为
可重用组件提供指导
? 可以包容各种服务平台, 中间件和应用软件
? 具备良好的可扩展性和可维护性
抽象商务应用模型
商务模型
应用模型
应用表达层 数据层
商务逻辑层
规划应用平台
核心商业逻辑
应用平台
系统基础设施环境
网络基础设施
支付认证接口
应用平台
商务服务平台
商务支持平台
基础支持平台
客户端
(client) 浏览器 传统客户机 移动设备 其他客户端 。。。。。
电子商务应用表达平台( Web 服务器,WAP等)
商务应用层( B2B,B2C等)
商务服务平台( CRM,SCM、交易市场、通信等)
商务支持平台(内容管理、目录管理、搜索引擎等)
基础支持平台
应用开发环境
,开发工具
-C/C++
-Java Beans
-Java
-applet……
高性能, 高可
靠性环境
-负载平衡
-错误恢复
-自动备份
………
系统管理
- 主机系统管
理
-网络管理
-安全管理
系统 / 应 用集
成支持环境
-传输
-消息
-事务处理
基础设施
操作系统、数据库系统、计算机系统、计算机网络
安全保障环境
认证中心
支付网关
企业 ERP
数据库系统
其他信息资
源
性能建模及其分析
? 性能模型的概念
? 性能模型的作用
? 性能模型的需求信息
? 性能模型的基本原理
? 建立简单的性能模型
性能模型 的概念
? 性能模型表达了工作负载使用系统资源的方
法,描述了决定系统性能的主要因素。这些
模型使用由资源模型和工作负载模型提供的
信息。性能模型被用来计算传统的性能度量
标准如响应时间、吞吐量、利用率和平均队
列长度,以及新的面向商务的性能度量标准,诸如收入总额或者损失总额 P=K/r
? 可以分为两个范畴:分析和仿真模型
? 分析模型通过公式来详细说明系统的不同部
件之间的交互 。 例如 HTTP事务响应的最小
可能时间,RTmin = RTT + 请求时间 min + 站
点处理时间 + 答复时间 min,
性能模型的作用
? 电子商务环境下研究资源分配问题的一个基本
的工具
? 分析分布式应用程序的性能和评估网络的影响
? 可以通过回答假设性分析问题,而不是在生产
环境中进行任何变化,来帮助发现性能问题
? 可以用于预测目的。它们可以回答关于性能影
响的假设性分析问题,这些问题是由于电子商
务站点的组成部件、元素和工作负载的改变而
引起的。性能模型有助于分析将来的贸易场景
建模 /预测范例
性能分析 性能建模 性能预测
真实系
统
收集数据
性能测量
建立模型
获得参数
解答模型
验证模型
设计系
统的性
能
确认模型
修改模型
服务时间和服务需求
? 电子商务事务的定义
? 服务时间 构成
? 服务器上的服务时间
? 通信网络的服务时间
? 队列、等待时间和响应时间
性能定律
? 利用率定律
? 利用率 =到达速率 *每事务平均服务时间 /队列资
源数
? 强制流模型
? 平均吞吐量 =平均访问对列数 *单位时间完成事
务数
? 服务需求定律
? 服务需求 =系统吞吐量 *利用率
? Little定律
? 黑盒子中的客户的平均数量 =黑盒子的吞吐率 *
客户平均停留时间
瓶颈和可扩展性分析
? 渐进性的界限
? 开放式模型
? 封闭式模型
小结
? ? 模型是系统的表示, 它必须简单和能够提取所研究
的系统的最相关的特性 。 特别的, 性能模型表达了工作负
载使用系统资源的方法, 并且提取了决定系统性能的最主
要的因素 。
? ? 我们使用分析性能模型, 它通过公式详细描述了系
统各个部件之间的交互 。
? ? 性能模型有助于基础结构设计, 资源分配问题, 系
统协调和容量规划 。
? ? 一个电子商务事务使用多个服务器 。 事务的总的响
应时间有两个主要的部分构成:服务时间和等待时间 。
? ? 在通信网络中, 我们给出了多个公式来计算平均服
务时间 。
? ? 我们通过简单和实际的电子商务的例子来描述了几
个重要的关系, 包括利用率定律, 服务需求定律, 强制流
定律和 Little定律, 以及它们的使用 。
Internet,IPv4,IPv6
Transport,HTTP,FTP,SMTP
Messaging,SOAP
Service Description,WSDL
Service Discovery,Integration,UDDI
Workflow,WSFL
Routing,Reliability and Transaction,
M
ana
gem
ent
Qualit
y of
S
er
vice
Secur
ity
Web Service层次模型
Web Service发展阶段
? 1.技术显现
? 2.不断膨胀的期望期
? 3.希望破灭之后的醒悟期
? 4.豁然开朗的应用发展期
? 5.大量的工业化生产期
? XML技术位于第四阶段
? web service却刚好处于第二阶段也就是
“泡沫”的顶峰
Webservice VS CORBA
? Item WebServices Corba
? Protocol SOAP,http,Schema IIOP,GIOP
? Location identifiers URLs IORs,URLs
? Interface define WSDL IDL
? Naming,directory UDDI Naming Service
? CORBA适合用于后台分布式服务器之间的互
联。 webservice是广域网内客户端和服务器
端一种比较好的交互方式。
何时使用 Web Service
? 1.跨越防火墙的通信
? 2.应用程序集成
? 3.B2B的集成
? 4.软件重用
? 5.用 Web service来集成各种应用中的功能,
为用户提供一个统一的界面
组件软件
? 部分升级
? 补丁
? 缩短软件的更新周期
? 增加了异构软件的可能
? 标准接口、标准规范、标准协议
? 动态组合,提高软件生产力
? 符合现代软件的发展要求
软件组件
? 关键:接口设计
? 接口不变性
? 接口可扩展性
? 对基础设施的依赖
? COM,CORBA,..,
? 内部独立设计、独立开发
? 独立发布、独立测试
基础设施:组件体系
? COM(Component Object Model)
? 93年发布,脱胎于 MS的 OLE
? 规范 +实现
? CORBA(Common Object Request
Broker Architecture)
? 91年第 1版,OMG(Object Management
Group)
? 规范 +实现
? EJB(Enterprise Java Bean)
? 98年第 1版,sun
? 规范 +实现
COM:组件对象模型
? 建立在二进制层次上的标准
? 许多概念与 C++的特征相似,如 vtable
? 程序与程序之间的通信建立在此基础上
? COM规范
? 平台无关
? 定义了大量的标准接口用于各种用途
? COM实现
? 平台相关
? Windows实现了规范要求以及许多辅助功能
COM,COM体系
? 基本的功能
? 扩展功能
? 连接点
? 结构化存储
? 名字服务
? 自动化
? 其他
? COM+
COM,COM+
? 建立在 COM的基础上,COM的自
然延伸
? Services
? 事件服务
? 队列服务
? 事务服务
? 负载平衡
? 其他
COM:应用
? OLE
? ActiveX control
? 脚本功能扩展
? OLE DB
? ADSI
? ASP
? 其他
COM:分布式应用
? COM/COM+为基于 Windows的分
布式应用提供了基础设施
? Transaction
? Security
? OLE DB
? Web
? 集成 Active Directory
? 管理功能
CORBA
? OMG,800多家厂商联合制定的标准
? 91年 1.0,主要是 C语言映射
? 95年 2.0,加入 IIOP
? 目前最新版本 3.0
? CORBA规范
? 制订了互操作规范,上层标准协议
? 一系列映射到多种语言的规范
? 各种服务相关的规范
? CORBA实现,ORB
CORBA体系结构
CORBA:跨平台、跨语言
? 典型的语言,C++语言,Java语言、
Smalltalk
? 多种平台
? 关键,IOR(Interoperable Object reference)
? ORB实现
部分 ORB实现
? 商业 ORB
? Orbix,IONA公司
? Visibroker,Inprise公司,4.0版完全支持 2.3规范
Netscape communicator浏览器嵌入 Visibroker
? 自由 ORB
? ORBit,遵循 CORBA 2.2规范,支持 C语言,性能较
高
? mico,GNU,OpenSource
? TAO,美国华盛顿大学分布式对象计算研究小组
? omniORB,AT&T剑桥实验室
? 国产 ORB
? 国防科大的嵌入式 CORBA(eBus)
? 东南大学的 ORBUS
CORBA:服务
? 命名服务
? 层次命名
? 绑定
? Trading Service
? 功能更强、使用更灵活的对象查询服务
? 事件服务
? 事件发送方和接受方之间的 decouple
Enterprise Java Bean
EJB体系是 JAVA平台上的 服务器端 组件模型
?目标 是最大限度地减轻分布式应用程序的开发工作。
?安全, 事务处理 尽可能不再由手工编码的方式实现,
而是通过使用 JavaBean自身的标记实现。
组件开发中的参与者 (Role)
?提供者 (Provider)-设计 Bean
?安装者 (Deployer)-将 EJB类安装到 EJB容器中
?应用程序开发者 (Application Assembler)
?容器提供者( Container Provider)-提供运行环境
.Net技术概览
? 展示层 – ASP.Net,Windows Forms
? 中间层 -,Net组件
? 中间层可使用的企业服务
? System.EnterprisesServices
? 事务服务 MTS
? 消息服务 MSMQ
? 目录服务 ADSI,UDDI
? 对象池 Object Pooling
? 异步组件 Queued Component
? 数据层 – ADO.Net
? 远层调用 -,Net Remoting/ Web Service
? 利用现有资源 -,Net Interop / Web Service /BizTalk
应用程序服务器
Servlet/JSP 引擎
EJB Server
客户端
Browse
数据库服务器
HTTP
JDBC
DB2
Model
Controller View
基于 EJB 的三层系统架构
J2EE技术概览
? 展示层 – ServLet/JSP
? 中间层 – EJB
? 中间层可用的企业服务
? 事务服务 JTA
? 目录服务 JNDI
? 消息服务 JMS
? 异步组件 Message-Driven EJB
? 数据层 - JDBC
? 远程调用 – RMI/IIOP
? 使用现有资源 - JCA
对 XML的支持
? J2EE标准未包括对 XML Web服务的支持
? 各个厂商提供自己的方案
? 支持 UDDI/WSDL/SOAP
? WSI组织保证互操作性
? SUN的方案
? JAXP/JAXB/JAXM/JAXR/JWSDL
? JAX/RPC
? JAX* – Java API for XML *
技术比较结论
?,Net和 J2EE应用有着相似的架构
?,Net和 J2EE有相应的主要技术
?,Net所有技术来自 Microsoft
? J2EE的技术有多个厂商的实现
?,Net和 J2EE都可以满足大多数应用的需求
? 主要的差别不在技术的可行性上
? 开发效率
? 性能
? 成本
? 稳定性
Web站点开发集成解决方案
? EB系统基础设施的三个考虑因素
? 安全可靠性、可扩展性、灵活性
? 合适的应用框架基础
? IBM E-Business On Demand Integration解决方
案
? Integrated:企业内外的数据、信息、应用、流程有机整
合
? Open:遵循业界公认的最新的技术标准和规范
? Virtualized:在分布式计算环境下共享所有的 IT资源
? Autonomic:使系统做到 self-protecting,self-optimizing,
self-healing和 self-configuring
试卷情况说明
? 题型、分值
? 内容
? 考试形式 —开卷