1、专题四 电子商务基本架构,电子商务基本架构的组成: 电子商务基本系统模型 Internet技术基础 面向对象技术 电子商务应用框架 Internet是电子商务的基础,信息安全是保障,软件是灵魂,规划是关键,应用框架是开发和部署电子商务应用系统的基础。,第一节 电子商务基本系统模型电子商务模型:是由Internet技术、IT技术和商务过程有机集成的。 一、电子商务模型的主要特性 、 电子商务通过广泛的响应者使得交易更便利 、 包括通信在内的事务处理瞬时完成 、 客户被授予更大的权利 、 客户群体的出现 、 更强的竞争力,二、电子商务的三层系统模型 电子商务的三层系统模型包括: 客户 Web应用服
2、务 服务器 电子商务基本系统模型集中体现了面向Web的网络计算风格,并结合了显示、业务逻辑、数据存储这三层应用元素.,三、电子商务系统模型的特性 、 基于Web浏览器并支持Java applet的广泛的客户连接 、 易于管理的客户,通过配置需要很少或无须本地的软件安装和数据备份 、 写一次,就可以随处4运行的应用软件 、 提倡软件复用 、 与外部服务的连接,第二节 Internet技术基础 Internet的先驱是ARPANET,TCP/IP协议的广泛使用促使Internet形成 Internet由以下网络群构成: 、 主干网 、 区域网 、 商用网络 、 局域网 Internet的技术基础包
3、括: TCP/IP体系结构 TCP/IP应用 Web体系结构 信息安全,一、TCP/IP体系结构 Internet协议组中有两个重要的协议: TCP(TransmissionControl Protocol)传输控制协议IP(Internet Protocol)网际协议 互联网上的主机被赋予一个IP地址,一台主机有多个接口时,每一接口都有一个唯一的IP地址,IP地址由两部分组成:网络号码和主机号码 IP地址的网络号码部分在Internet范围内统一分配,在Internet范围具有唯一性。 IP地址的主机号码由主机所在的组织结构分配当含有IP子网时,IP地址由网络号码和局部地址两个部分构成。局部
4、地址又分成两个部分:子网号码和主机号码IP地址的表示采用位二进制数,实际使用时,分为个位二进制数,每个位二进制数用5之间的十进制数来表示,1、TCP/IP协议组的层体系结构每一层代表一组功能,()应用层指使用TCP/IP进行通信的应用程序 常见的应用程序有:HTTP、FTP、SMTP、Telnet等。 应用软件与传输层之间的接口由端口号(port)和套接字(socket)定义。 套接字是通信端点的抽象表示。 套接字由三元组TCP,IP地址,端口号唯一标识。 运行时套接字是一个三元组TCP,本地IP地址,本地进程号。 两个应用进程的连接由五元组TCP,本地IP地址,本地进程号,远程IP地址,远程
5、进程号唯一标识。,()传输层提供端到端的数据传输,确保数据交换的可靠性,并能同时支持多个应用。 传输层的主要协议是TCP,另一个是UDP(User Datagram Protocol,用户数据包协议)。 TCP提供面向连接的可靠的数据传输服务,而UDP提供的是无连接的不可靠的基于数据包的服务。,()网际层(或称网络层)提供互联网的一个“虚拟”网络 网际层屏蔽各个物理网络的差异,使得传输层和应用层将一个互联网络看作是一个整体的“虚拟”网络。 IP协议是这层中最重要的协议,它是一个无连接的报文分组发送协议,包括处理来自传输层的分组发送请求、路径选择、转发数据包等,但并不具有可靠性,也不提供促错误恢
6、复等功能。 在TCP/IP网络上传输的基本信息单元是IP数据包(Datagram)。 网际层的其他协议包括ARP(Address Resolution Protocol,地址解析协议)、ICMP(Internet Control Message Protocol,控制报文协议)、IGMP(Internet Group Management Protocol)。,()网络接口层提供网络硬件设备的接口 这个接口可能提供可靠的传送,也可能提供不可靠的传送;可能是面向数据包的,也可能是面向流的。 TCP/IP在这一层并没有规定任何的协议,但可以使用绝大多数的网络接口。如IEEE802.2、IEEE80
7、2.3、IEEE802.4、IEEE802.5、X.25、ATM(Asynchronous Transfer Model,异步传输模式)、FDDI(Fiber Distributed Data Interface,光纤分布式数据接口)。,、ISO的OSI/RM(Open Systems Interconnect Reference Model,开放系统互连参考模型) OSI/RM将数据通信的体系结构分成七层(参见下图)。,应用层为网络应用;表示层是有关数据格式与加密处理;会话层是有关会话的建立与维护;传输层提供端到端的数据传输;网络层是有关报文传输(含路由);数据链路层提供可靠的数据传输(含错
8、误检查与纠正);物理层是有关物理硬件上比特的传输。应用层、表示层、及会话层的协议构成上(三)层协议,传输层、网络层、数据链路层及物理层的协议构成下(四)层协议。上三层协议是面向应用程序的,与下四层相对独立;下四层只负责处理发送数据,即进行每个数据报的组装、路由、验证及传输,并不关心接收和发送给应用程序的数据类型。,二、TCP/IP应用 TCP/IP协议组中的最高层协议是应用层协议,这些协议是用户可见的接口。 常用的TCP/IP应用协议包括Telnet、SMTP、FTP。 Telnet为网络终端提供了与远程主机进行交互的功能。Telnet服务器接受Telnet终端的数据,并提交给服务器操作系统,
9、操作系统产生的结果返回给终端。,SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)是用来在互联网上两个系统之间传送电子邮件的协议。FTP(File Transfer Protocol)提供了一个在系统之间快速移动数据文件的机制。上述三个协议都建立在TCP之上,并依赖TCP的可靠性来保证数据在网络上传输的正确性。TCP是一个端对端的面向连接的协议,连接的两端具有对等的地位,没有主从关系;但是,基于TCP的应用通常使用客户服务器的交互模式。,三、Web体系结构 、1990年,Berners-Lee提出了构成Web体系结构的基本元素 Web服务器 Web浏览器
10、浏览器与服务器之间的通信协议HTTP(Hypertext Transfer Protocol,超文本传输协议) 写Web文档的语言HTML(Hypertext Markup Language,超文本标记语言) 用来标识Web上资源的URL(Uniform Resource Locator,统一资源定位器),2、 URL URL用来唯一标识Web上的资源,包括Web页面、图像文件、音频文件、视频文件等。URL的格式为:协议:/主机名:端口号/标识符(例如http:/:80/index.html)协议可以是HTTP、HTTPS、FTP 主机名用来标识被请求的服务器端口通常为不同协议保留(例如,FT
11、P默认的端口号为21,HTTP默认的端口号为80,HTTPS服务器侦听的端口默认为443),3、 HTTPHTTP是建立在TCP/IP协议基础之上的应用协议,但不是面向连接的,而是一种请求应答式协议 HTTP请求包括一个方法、可能的几个消息头、一个消息体。常用的方法类型包括:GET(请求一个网页)、POST(传送一个表单中的信息)、PUT(存入一个信息)、DELETE删除一个信息)。HTTP应答有一个状态行、可能的几个消息头、一个消息体。,4、HTMLHTML并不是一个程序设计语言,而是一个标记语言,它所提供的标记是由SGML(Standard Generalized Markup Langu
12、age,标准的通用标记语言)定义的SGML(ISO于1986年推出的)源自IBM于1969年开发的GML(generalized Markup Language)。SGML是一种元语言,即用来定义标记语言的语言,它提供了一种将数据内容与显示分离开来的数据表示方法,使得数据独立于机器平台和处理程序。 1998年World Wide Web Consortium(3W协会)推出了XML(Extensible Markup Language,可扩展标记语言)及XHTML(Extensible Hypertext Markup Language)。,5、Web浏览器常见的Web浏览器有Netscape
13、 Navigator(航海者)和Microsoft Internet Explore(网络探索者)。Web浏览器能理解多种协议,如HTTP、HTTPS、FTP等。也能理解多种文档格式,如TEXT、HTML、JPEG、XML等。,6、Web服务器(或称HTTP服务器)Web服务器提供HTTP服务Web服务器本来只提供“静态”内容,但可采用CGI(通用网关口)技术或Java Servlet技术从一个运行的程序里得出“动态”内容。现在Web服务器通常还具备连接数据库的功能Web服务器还提供其他服务,如FTP服务Web服务器还可以作为代理服务器,总之,URL、HTTP、HTML(以及XML)、Web服
14、务器、Web浏览器是构成Web五大要素。Web的本质内涵是一个建立在Internet基础上的网络化超文本信息传递系统,而Web的外延是不断扩展的信息空间。Web的基础技术在于对Web资源的标识机制(如URL)、应用协议(如HTTP和HTTPS)、数据格式(如HTML和XML)。,四、信息安全概述,1、典型的信息安全要求包括:保密性 完整性无否认性 真实性、 实现信息安全的方法加密技术 数字签名鉴别技术使用加密技术可实现信息保密,加密技术和数字签名技术可以实现信息完整性和无否认性,鉴别技术实现真实性。,3、 使用公开密钥体制实现信息保密公开密钥体制的特点:加密密钥和解密密钥不同,加密和解密算法都
15、公开,加密密钥也公开,只要求保管好解密密钥(隐蔽密钥)。4、 使用公开密钥算法和消息摘录算法实现信息完整性和无否认性常用的消息摘录算法有MD5(Message Digest 5)和SHA(Secure Hash Algorithm)加密后的消息摘录通常称为这个消息的数字签名(这种签名称为公开密钥签名),5、 信息安全中的鉴别问题通常使用公开密钥证书来解决鉴别问题,这需要可信赖的第三方机构(授权机构)的认证6、 SSL(Secure Sockets Layer,安全套接层)协议SSL分为两部分:SSL握手协议和SSL应用数据协议(SSL记录协议)(1)SSL握手协议()SSL应用数据协议SSL应
16、用数据协议是服务器和客户在安全通道上传输应用数据的机制,()SSL的优点很好的保密性可靠性好灵活性SSL和HTTP相结合形成HTTPS协议HTTPS服务器侦听的端口默认为443信息安全还涉及很多方面,如域名服务器(DNS)的安全问题、NAT(Network Address Translation)技术,IP安全体系结构(IPSec)、防火墙等。,第三节 面向对象技术,本节主要介绍面向对象基本思想、JAVA、组件技术(主要包括JavaBean和CORBA) 一、面向对象的基本思想 1、面向对象的程序设计是一种以对象为中心的程序设计方法。 对计算机软件来说,一个对象是一个拥有数据和作用在这些数据上
17、的一组方法的实体,它通过一个接口对外提供服务。 一个对象拥有的数据能表示对象的状态,对象之间的交互通过消息发送来进行。 面向对象程序通常包含一组相关的类,这些类定义了各种不同类型的对象。,2、面向对象程序设计的基本特点:封装、继承、多态封装:封装使得对象的内部实现与外部接口分离开来;封装、抽象、和信息屏蔽是用来降低软件复杂性的重要技术。继承:指一种类型的对象继承了另一种对象的特性。在面向对象的程序设计中,继承是指一个子类继承父类(或称基类)的特征(数据结构和方法) 一个子类可以有多个父类,称之为多继承。多态:愿意指一个实体多个形态。在面向对象的程序设计中主要是指变量多态和方法多态。变量多态是指
18、一个变量在运行时刻标识不同类型的对象。方法多态是指统一方法对于不同的对象来说可以做不一样的动作。多态通常与语言的动态绑定机制有关。,3、面向对象的程序设计语言(Object Oriented Programming Language)常见的有Java、C+、Smalltalk等,这些语言都有类和继承的原语,并通过继承和动态绑定来实现多态。 4、名的面向对象的方法有Booch方法、OMT(Object Modeling Technique)、OOSE(Object Oriented Software ngineering)。其设计与分析符号统一为UML(Unified Modeling Lang
19、uage,统一建模语言),它是一个为软件系统可视化分析、设计和建档的语言标准。支持UML分析与设计的工具包括IBM VisualAge UML Designer和Rational Rose。,二、Java 1、Java是Java程序设计语言和Java平台的总称。Java的主要特点:跨平台、动感的Web、Internet计算。 Java平台由Java虚拟机(Java Virtual Machine)和Java应用编程接口(Application Programming Interface,API)构成。 Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部
20、分。 Java语言是一个支持网络计算的面向对象程序设计语言。Java语言吸收了Smalltalk语言和C+语言的有点,并增加了其他特性,如支持并发程序设计、网络通信、多媒体数据控制等。,2、Java语言的主要特性 Java语言是简单的: Java语言是面向对象的; Java语言是分布式的; Java语言是健壮的; Java语言是安全的; Java语言是体系结构中立的; Java语言是可移植的; Java语言是解释型的; Java语言是高性能的; Java语言是多线程的; Java语言是动态的;,3、Java企业应用编程接口(Java Enterprise API)的类库,JDBC(Java D
21、atabase Connectivity) EJB( Enterprise JavaBean) Java RMI(Java Remote Method Invocation) Java IDL(Java Interface Definition Language) JNDI(Java Naming and Directory Interface) JMAPI(Java Management API) JMS(Java Message Service) JTS(Java Transaction Service),三、组件技术,、组件的概念 即插即用的应用软件称为组件或软件构件。 、典型的组件体系
22、结构包括DCOM、JavaBeans和CORBA DCOM(Distributed Component Object Model)是Microsoft的分布式计算标准,也是ActiveX技术的基础,它依赖于Windows平台,但独立于编程语言。 JavaBeans是一个开放的标准组件体系结构,它独立于平台,但使用Java语言。一个JavaBean的主要特征包括属性、方法、事件。 CORBA(Common Object Request Broker Architecture)是一个分布式对象体系结构,它独立于平台,也独立于语言。,第四节 电子商务应用架构,电子商务应用系统应具备的特征: 基于标准
23、 以服务器为中心 可伸缩 能利用已有的核心系统 可快速部署和易用 易管理 框架是指一个可复用的设计,表示为一组抽象的元素范例以及元素范例之间合作的接口。 一个应用框架中的元素范例也可称之为组件 本节介绍的电子商务框架基于业界标准。它为开发和部署电子商务应用系统提供了一组完整的服务。它提供的Web应用编程模型定义了Web应用拓扑结构,以及使用框架提供的服务来设计Web应用的一个模型。这个框架基于独立于平台和提供商的技术标准,包括关于客户端、应用服务器、网络、数据和基础设施的标准。,一、电子商务应用框架的体系结构,体系结构的构成要素: 1、客户 2、网络基础设施它为整个体系结构提供了一个安全的可伸
24、缩的分布式网络平台,包括下列基于开放标准的服务: TCP/IP和网络服务 安全服务 目录服务 文件和打印服务,3、应用服务器软件 HTTP服务器 邮件和社团服务 群件服务 数据库服务 事务处理服务 消息发送服务 4、应用集成 应用集成使得异构应用系统间相互通信,使得企业与Internet实现无缝连接。 支持的集成方法包括:连接器、应用消息发器、商务过程集成与工作流服务、组件集成服务。,5、应用编程环境 Web应用编程环境基于Java servlets、Java Server Pages(JSP)、Enterprise Java services和Enterprise JavaBean组件模型。
25、 6、电子商务应用服务 7、系统管理 8、开发工具 开发工具用来创建、组装、部署和管理应用系统。,二、Web应用编程模型,Web应用系统利用Web客户(如浏览器)、Web服务器和标准的Internet协议。 Web应用编程模型定义了Web应用拓扑结构以及使用框架提供的服务来设计Web应用的模型。 Web应用的拓扑结构包含的元素有客户、Web应用服务器、基础设施服务和外部服务。,1、客户 客户使用Internet技术标准(如TCP/IP、HTTP、HTML、XML)与Web应用服务器来存取业务逻辑和数据。 Web应用编程模型的重要准则之一是Web应用的商务逻辑总是运行在服务器端而不是在客户端。其
26、优点如下: 支持更广泛的客户端设备 Web应用服务器能集成对资源的存取,从而简化应用的设计,增强可伸缩性,并提供对资源的更好保护。 运行在服务端的商务逻辑容易得到保护、更新和维护。 运行在服务端的商务逻辑使得用户的应用环境得到集中管理并能在不同的客户机上重建。,2、Web应用服务器 Web应用服务器是Web应用拓扑结构的核心,它为Web应用提供广泛的应用编程、数据存取和应用集成等服务。 Web应用的交互模型包括业务逻辑层、用户界面层和交互控制器层 3、基础设施服务 目录服务 认证授权 防火墙 代理服务器,4、外部服务 总之,使用电子商务应用系统开发和部署电子商务应用系统带来下列优势: 极大地方便电子商务应用系统的快速发展和部署: 适应任何客户端设备; 确保应用系统能移植到各种不同的服务器环境中; 利用并扩展已有的信息技术资源。,第五节 开展电子商务的过程,开展电子商务的过程包括发展指南的制定、商务过程的转型、电子商务应用系统的设计与实施、知识的利用等。 一、电子商务的周期模型 电子商务的周期模型包括四个阶段,二、电子商务发展规划 一般企业开展电子商务遵循下列模式: 1、尝试阶段 2、采用阶段 3、调整阶段 4、集成阶段 三、电子商务的应用设计途径 电子商务的应用设计途径包括四个步骤 1、采集需求 2、开发一组可选的体系结构 3、确定体系结构 4、选择组件,