欢迎来到天天文库
浏览记录
ID:34544412
大小:190.50 KB
页数:7页
时间:2019-03-07
《应用服务器设计、开发与维护 第四卷(共五卷)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、下载第4章子程序和应用服务器子程序以各种形式出现—脚本、applet、servlet、插件(plug-in)、辅助应用程序、以及存储过程。它们通过一系列协议和接口与程序进行交互,例如CGI、ISAPI、NSAPI、HTTP、以及HTML。这一章将讨论这些术语以及使用它们的进程。具体地说,你将看到下列内容:¥什么是子程序。¥客户端程序设计。¥服务器端程序设计。¥接口协议和API。¥基本协议。4.1什么是子程序计算机软件的经典观点是处理数据的程序;程序本身和它们的输入输出被严格的划分开。但是,从现代计算机刚刚诞生的日子起,这种划分就
2、一直是随意的、充满误解的以及在许多情况下甚至是失败的。(像冯·诺依曼和郝柏这样的先驱者都认识到,要在数据的位和字节与指令的位、字节之间加以区分只是人们的一相情愿。)一个程序(编译器)的输出实际上可以是另一个程序,而且程序也可以作为另一个程序(如操作系统)的输入。一旦你认识到程序和数据具有很大的共同性,你就会想如何利用这个事实。一种常见的方法就是创建小程序(子程序),它们可以和传统的程序一起配套使用。4.1.1客户机与服务器的子程序子程序可以用来增强应用服务器体系结构中的任意部分。它们的术语不同这由它们属于哪一类子程序以及使用地点
3、来决定,图4-1展示了在Web浏览器(在用户计算机上)和Web服务器(在服务器主机上)中用到的子程序的术语。浏览器Web服务器AppletServlet辅助程序脚本插件脚本图4-1用于浏览器和服务器的子程序44计计第一部分设计下载注意,尽管这里只画出了一个Web服务器,但应用到Web服务器上的术语同样可以用到应用服务器以及某些数据库上。子程序可以是独立的程序,也可以在运行间被集成到浏览器和Web服务器中;这两种结构都在图中有所反映。此外,在某些情况下,子程序可以和其他设备与程序进行通信—如图右边的箭头所示。4.1.2子程序的类型
4、子程序可以分为三大类:1)辅助应用程序和插件。2)Applet(小应用程序)和Servlet(小服务程序)。3)脚本。不管你用到的是哪一类子程序,必须清楚下列几点:¥它是用什么语言编写的?¥它在哪里运行?¥它怎样执行?4.1.3Applet和ServletApplet和Servlet通常使用诸如Java和VisualBasic这样的语言编写。浏览器或服务器使用一个虚拟机(通常是在计算机上运行的另一个进程)来执行它们。使用像Java这样的语言,这些子程序可以只编写一次,然后编译成一个中间指令集,称作字节代码;这种字节代码与平台无关
5、,并且需要通过虚拟机执行。执行这些子程序的原因很多;典型原因是产生了一个事件,而它们和这个事件相关联。(这些事件可以是用户界面事件,如在Web页面上的鼠标移动,或者是操作事件,如用户登录。)4.1.4辅助应用程序和插件辅助应用程序和插件通常使用诸如C++或C这样的编程语言编写。因此,它们需要针对每一个要使用它们的平台来编写和编译。它们采用目标代码的形式发放,并且在需要的时候被浏览器或服务器执行。它们的运行方式可以是一个独立的进程,也可以是由浏览器或服务器调用的过程。对于后一种情况,它们使用的是浏览器或服务器的内存空间。常用它们处
6、理一种浏览器或服务器自己不支持的数据类型。对Web浏览器的用户来说辅助应用程序已经熟悉了:它们用于处理浏览器本身不支持的数据或协议类型的应用程序。当你下载了一个图像片断、一个格式化文档、或者一个压缩文件时,通常需要使用一个辅助应用程序来正确地打开和显示数据。1.文件辅助程序当浏览器检测到这类数据时,它调入对应的辅助应用程序;这个辅助程序可以作为浏览器的插件运行,也可以作为一个独立的应用程序运行。如果它是一个插件,辅助应用程序将处理数据,并把数据返回给浏览器,并在Web页面内进行显示。(这就是通常显示视频图像的方式。)第4章子程序
7、和应用服务器计计45下载如果它是作为一个独立的应用程序运行,数据就显示在辅助应用程序自己的窗口中。文件到辅助程序的映射一个特定辅助应用程序和一个文件类型之间的联系,通过使用文件后缀和多用途Internet邮件扩展协议(MIME)类型建立。(把一个特定数据类型连接到一个特定的应用程序并不是Web浏览器所独有:所有的个人计算机操作系统都需要某种机制,以便在你点击一个数据文件时能够打开正确的程序。)你可以在浏览器的选项中设置辅助应用程序和插件;你也可能经常要为你的计算机桌面设置这些选项。对于每种情况,最终你见到的信息集合都类似于表4-
8、1中所示。这个示例表格没有展示那些特定于浏览器或操作系统的附加选项,这些附加选项允许你进一步改善自己的选择。(例如,对于某个给定的数据类型,你可以选择是把它存到磁盘上,或者在浏览器的窗口内显示。)当一个文件发送到你的浏览器时,浏览器首先检查它的三个字符的后缀名,
此文档下载收益归作者所有