java中Servlet和CGI的区别

java中Servlet和CGI的区别,第1张

与cgi的区别在于servlet处于服务器进程中,它贺神通过多线程方式运行其service方法,一个做皮实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销禅胡亏毁,所以效率上低于servlet。

这种编程不好学

CGI:Common Gateway Interface

CGI代表Common Gateway Interface(通用网关界面),它使在网络服务器下运行外部分应用程序(或网关)成为可能。CGI-BIN 目录是存放CGI脚本的地方。这些脚本使WWW服务器和浏览器能运行外部程序,而无需启动另一个原因程序。

它是运行在Web服务器上的一个程序,并由来自于浏览者的输人触发。CGI是在HTTP服务器下运行外部程序(或网关)的一个接口,它能让网络用户访问远程系统上的使用类型程序,就好像他们在实际使用那些远程计算机一样。

CGI能够让浏览者与服务器进行交互,如果你曾经遇到过在网络上填表或者进行搜索,就很有可能就是用的CGI。

尽管CGI易于使用,但是当大批人同时使用一个CGI应用程序是会反应较慢,网络服务器 速度也会受到很大 影响。CGI应用程序的优点是可以独立运行。

CGI应用程序可以由大多数的编程语言编写,如Perl(Practical Extraction and Report Language)、C\C++、Java 和Visual Basic等。不过对于那些没有太多编程经验的网页制作人来说,实在是一个不小的难题。

CGI应用程序的工作原理是这样的:

1.浏览器通过HTML表单或超链接请求指上一个CGI应用程序的URL。

2.服务器收发到请求。

3.服务器执行指定所CGI应用程序。

4.CGI应用程序执行所需要的 *** 作,通常是基于浏览者输人的内容。

5.CGI应用程序把结果格式化为网络服务器和浏览器能够理解的文档(通常是HTML网页)。

6.网络服务器把结果返回到浏览器中族慧漏。

有关CGI应用程序要注意的是:

CGI应用程序运行在浏览器可以请求的服务器系统上,执行时需要使用服务器CPU时间和内存。如果有成千上万的这种程序会同时运行,那会对服务器系统提出极高的要求。兆烂你要慎重考虑这个问题,以防止服务器系统崩溃。

不完善的CGI应用程序可能成为别人非法进人服务器系统的通道,有可能导致重要的资料被删除或外泄。

CGI应用程序主要的用途有以下几种:

根据浏览者填写的HTML表单发送定制的答复。

创建可单击的图像缩小图。

创建一个浏览者可以搜索内容的数据库。

提供服务器与数据库的接口,并把结果转换成HTML文档。

制作动态HTML文挡。

如果一个CGI脚本可以在每台计算机上做同样的事情;编写脚本就会变的很容易。不幸的是,CGI脚本依赖于服务器的 *** 作系统,因此,对于非UNIX服务器来说,Prl(UNIX下编写脚本的一个常用工具)脚本毫无用处。所以,你必须定制安装你的CGI脚本。

大多数服务器都提供CGI-BIN目录,但是这还不够。因为你应该拥有自己的CGI-BIN。这样,你就能运行自己的脚本(而不是让自己的系统去适应已碧指存在于系统上的脚本)。因此,你的提供商应安装CGI-BIN,且能够帮助你编写脚本

CGI是信息服务器主机对外信息服务的标余茄准接口,为了向客户端提供动态信息而制定

通过专门编写CGI脚本程序(在CGI控制下运行得程序,通常称为CGI程序),不仅可以生成静态的内容,而且可以生成完全无法预见的动态的内容!比如雅虎、搜狐等搜索引擎提供的强大搜索功能便是利用CGI实现的

CGI脚本程序可以用C、C++等语言在多种平台上进行开发

无需太大修改就可以从一个平台移植到另一个平台上运行,具有很好的兼容性

ASP是微软公司推出的意图取代CGI的新技术

通过它,用户可以使用几乎所有的开发工具来创建和运行交互式的动态网页,如返馈表单的信息收集处理、文件上传与下载、聊天室、论坛等等,实现了CGI程序的功能介是又比CGI简单,而且容易学习

由于ASP使用基于开放设计环境的ActiveX技术,用户可以自己定义和制作组件加入其中,使自己的动态网页具有几乎无限的扩充能力

它还可利用ADO(ActiveDataObject,微软的一种新的数据访档昌问模型)方便地访问数据库,能很好地对数据进行处理

脚本语言是介于HTML(HyperTextMarkupLanguage,超文本标示语言)和Java、C++和VisualBasic之类的编程语言之间的语言

它的语法和规则没有可编译的编程语言那样严格和复杂

传统的HTML是静态的,为增强网页的动态功能,一些厂商先后推出了自己的Script脚本语言,其中Netscape推出了JavaScript(for客户端和for服务端两种),微软则推出了VBScript和ASP两种,用于服务器端和客户端程序的编写

JavaScript是一种基于对象(Object)和事件驱动(EventDriven)并具有安全性能的脚本语言

它与Java不同:JavaScript主要用于HTML的页面,脚本嵌入在HTML的源码中;而Java是一个独立的、完整的编程语言,既可以在Web中应用,也可以用于与Web网无关的情况

另外,JavaScript编写的程序不必在运行前编译,它们可以直接写入Web页面中并由调用它们的浏览器来解释执行

这样,一些基本交互竖蠢察作用就不用在服务器端完成,提高了客户端的响应时间

VBScript为了适应Internet上的应用,Microsoft公司把用于应用程序描述的VisualBasic语言压缩成一个更合理的子集,称为VisualBasicScriptingEdition,简称VBScript

它也是一种HTML嵌入脚本语言,具有易学易用等特点

如果你已了解VisualBasic或VisualBasicforApplications,就会很快熟悉VBScript


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8219418.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-14
下一篇2023-04-14

发表评论

登录后才能评论

评论列表(0条)

    保存