第三章Web应用的核心技术 第一讲:用于电子商务的 Web技术概述 作者:丁晓诚
第三章 Web应用的核心技术 第一讲:用于电子商务的 Web技术概述 作者:丁晓诚
电子商务Web应用模型 应用特点:面向大量用户,进行在线事务处理 核心问题:如何面向大量用户?怎样进行在线事 务处理? 应用 浏览器 服务器 Web 服务器 浏览器 数据库
电子商务Web应用模型 应用特点:面向大量用户,进行在线事务处理。 核心问题:如何面向大量用户?怎样进行在线事 务处理? Web 服务器 浏览器 浏览器 应用 服务器应用 服务器应用 服务器 数据库
属于Web技术的部分 Internet协议:以HTTP协议为代表,面向 HTML页面传输 Web浏览器:一个客户端应用程序。通过 Internet协议从web服务器端获取数据或 代码,并予以显示或解释执行 ·Web服务器:通过 Internet协议,响应用 户请求。由一个专职倾听和应答用户请 求消息的守护进程和若干提供特定服务 的服务进程组成
属于Web技术的部分 • Internet协议:以HTTP协议为代表,面向 HTML页面传输。 • Web浏览器:一个客户端应用程序。通过 Internet协议从Web服务器端获取数据或 代码,并予以显示或解释执行。 • Web 服务器:通过Internet协议,响应用 户请求。由一个专职倾听和应答用户请 求消息的守护进程和若干提供特定服务 的服务进程组成
HTTP协议 对话双方:浏览器应用程序ⅴs.HTTP守 护进程。 分为四个步骤:打开连接-→>请求>响应> 关闭连接 是一次一个回合的一对一对话 HTTP用于HTML页面传输:服务器依据 客户请求中的条件,返回一个页面给客 户
HTTP协议 • 对话双方:浏览器应用程序 vs. HTTP守 护进程。 • 分为四个步骤:打开连接->请求->响应-> 关闭连接。 • 是一次一个回合的一对一对话。 • HTTP用于HTML页面传输:服务器依据 客户请求中的条件,返回一个页面给客 户
浏览器端技术 基础:标记语言解释器:HTML、XML 扩展: 脚本语言解释器: Javascript和 VBScript 下载程序运行: Java applet、 ActiveX
浏览器端技术 • 基础:标记语言解释器:HTML、XML • 扩展: – 脚本语言解释器:JavaScript和 VBScript – 下载程序运行:Java Applet、ActiveX
服务器端技术 基本服务:从文件系统中返回静态页面 扩展服务——支持页面的动态生成: 服务器端程序加载技术: 公共网关接口(CGI) 插件技术:NSAPⅠ、 ISAPI Servlet 服务器端脚本技术: Livewire、ASP JSP
服务器端技术 • 基本服务:从文件系统中返回静态页面。 • 扩展服务——支持页面的动态生成: – 服务器端程序加载技术: • 公共网关接口 (CGI) • 插件技术: NSAPI、ISAPI • Servlet – 服务器端脚本技术: Livewire、ASP、 JSP
公共网关接口(CGⅠ 最早的动态页面生成技术:HTTP守护进 程与网关程序之间的通信协议。 激活服务器端的某个程序,从已经被重 定向到HTTP守护进程的标准输入或环境 变量读入参数,产生一个服务进程并执 行,结果生成一个HTML文本,并向同 样被重定向了的标准输出写出
公共网关接口(CGI) • 最早的动态页面生成技术:HTTP守护进 程与网关程序之间的通信协议。 • 激活服务器端的某个程序,从已经被重 定向到HTTP守护进程的标准输入或环境 变量读入参数,产生一个服务进程并执 行,结果生成一个HTML文本,并向同 样被重定向了的标准输出写出
CG举例 Hello,You! HTML页面中的表单: 服务器虚拟目录/cgi-bin下的 greeting. exe(源码): #include Hello, %s!, &(s[5]))
CGI举例——Hello, You! • HTML页面中的表单: • • My name is • • • 服务器虚拟目录/cgi-bin下的greeting.exe(源码): • #include • void main() • { char s[100]; • scanf("%s",&s); • printf("content-TYPE: text/html \n\n"); • printf("Hello, %s!",&(s[5])); • }
CGI缺点 1)一次用户请求产生一个进程,占用资源过多,难以用 于处理大量用户的密集请求 (2)CG进程间通信十分困难,一般只能用文件读写作为 中介。 3)CGI没有安全框架,难以用于有较高安全性要求的事 务处理。 (4)CGI没有对象模型,难以满足商业事务处理的要求 其它服务器端程序动态加载技术都是对CGI方式的 改进与扩充
CGI缺点 • (1)一次用户请求产生一个进程,占用资源过多,难以用 于处理大量用户的密集请求。 • (2)CGI进程间通信十分困难,一般只能用文件读写作为 中介。 • (3)CGI没有安全框架,难以用于有较高安全性要求的事 务处理。 • (4)CGI没有对象模型,难以满足商业事务处理的要求。 • 其它服务器端程序动态加载技术都是对CGI方式的 改进与扩充
ISAPI- 个过渡性改进 微软的技术。基本思路是由HTTP守护进 程加载可独立执行的网关程序改为加载 动态链接库,取消了启动与释放进程的 开销
ISAPI——一个过渡性改进 • 微软的技术。基本思路是由HTTP守护进 程加载可独立执行的网关程序改为加载 动态链接库,取消了启动与释放进程的 开销