CGI、ASP、PHP、JSP、 ASP.NET网站开发语言比较

一、主流网站开发语言的简介及优缺点。

现在主流的网站开发语言主要包括cgi、asp、php、asp.net、jsp等。

HTML:当然这是网页最基本的语言,每一个服务器语言都需要它的支持。

(一)  网站开发语言之ASP:

ASP(Active Server Pages)是微软平台下的动态网页技术.Microsoft提出的ASP概念,使设计交互式Web页面的技术有了长足的进步。它采用了三层计算结构,将Web服务器(逻辑层),客户端浏览器(表示层)以及数据库服务器(数据层)分开,具有良好的扩充性。

ASP在执行的时候,是由IIS调用程序引擎,解释执行嵌在HTML中的ASP代码,最终将结果和原来的HTML一同送往客户端。

ASP是和平台相关的,只能运行在Windows平台上。而Unix的健壮性和Linux的源码开放性使它们广泛地应用在网站服务器中,相比之下,ASP的平台相关性大大制约了它的应用。

(二)  主流网站开发语言之PHP:

PHP(Personal Home Pages)是一种服务器端的嵌入HTML的脚本语言,可以运行于多种平台。借鉴了C语言,Java语言和Perl语言的语法,同时具有自己独特的语法。

由于PHP采用Open Source方式,它的源代码完全公开,使得它可以不断有新的东西加进来,形成庞大的函数库,以至实现更多的功能。PHP在数据库支持方面做得非常好,它能支持现在几乎所有的数据库。

PHP的缺点就是没有像JSP和ASP那样对组件的支持,扩展性较差。Personal Home Pages,顾名思义,只能适应中小流量的网站。

(三)主流网站开发语言之JSP:

JSP的全称是Java Server Pages,它是SUN推出的一种动态网页技术标准。它在传统的静态页面文件(*.html,*.htm)中加入Java程序片段和JSP标记,就构成了JSP页面。

JSP支持绝大部分平台,包括现在非常流行的Linux系统,应用非常广泛的Apache服务器也提供了支持JSP的服务。 组件的开发和使用很方便

ASP的组件是由C++,VB等语言开发的,并需要注册才能使用;而JSP的组件是用Java开发的,可以直接使用。JavaBeans的使用也很方便,又由于Java的跨平台性,也使得Javabeans的可移植性和可重用性非常高。

一次编写,处处运行(Write once,Run everywhere)

作为Java开发平台的一部分,JSP具有Java的所有优点,包括Write once,Run everywhere。

所有这些都显示了JSP强大的功能。但由于它出现得比较晚,在某些方面还不够规范。

(四)主流网站开发语言之CGI:

CGI就是公共网关接口 (Common Gateway Interface) 的缩写。它是最早被用来建立动态网站的后台技术。这种技术可以使用各种语言来编写后台程序,例如C,C++,Java,Pascal等,但是目前在CGI 中使用的最为广泛的是Perl语言。所以,狭义上所指的CGI程序一般都是指Perl程序,一般CGI程序的后缀都是.pl或者.cgi 。

CGI程序在运行的时候,首先是客户向服务器上的CGI程序发送一个请求,服务器接收到客户的请求后,就会打开一个新的Process(进程)来执行CGI程序,处理客户的请求。CGI程序最后将执行的结果(HTML页面代码)传回给客户。

由于CGI程序每响应一个客户就会打开一个新的进程,所以,当有多个用户同时进行CGI请求的时候,服务器就会打开多个进程,这样就加重了服务器的负担,使服务器的执行效率变得越来越低下。这也就是最近几年来随着各种新的后台技术的诞生,CGI应用在Internet上越来越少的原因。CGI方式不适合大访问量的应用。

二、比较一下ASP、ASP.net、JSP和PHP的优点和缺点:

(一)ASP

优点:1. 无需编译

2. 易于生成

3. 独立于浏览器

4. 面向对象

5. 与任何ActiveX scripting 语言兼容

6. 源程序码不会外漏

缺点:

1、Windows本身的所有问题都会一成不变的也累加到了它的身上。安全性、稳定性、跨平台性都会因为与NT的捆绑而显现出来。

2、ASP由于使用了COM组件所以它会变的十分强大,但是这样的强大由于Windows NT系统最初的设计问题而会引发大量的安全问题。只要在这样的组件或是操作中一不注意,哪么外部攻击就可以取得相当高的权限而导致网站瘫痪或者数据丢失。

3、由于ASP还是一种Script语言所没除了大量使用组件外,没有办法提高其工作效率。它必须面对即时编绎的时间考验,同时我们还不知其背后的组件会是一个什么样的状况。

4、无法实现跨操作系统的应用。当然这也是微软的理由之一,只有这样才能发挥ASP最佳的能力。可是我却认为正是Windows限制了ASP,ASP的概念本就是为一个能让系统运行于一个大的多样化环境而设计的。

5、还无法完全实现一些企业级的功能:完全的集群、负载均横。

(二)JSP

优点:

1、一处编写随处运行。

2、系统的多台平支持。

3、强大的的可伸缩性。

4、多样化和功能强大的开发工具支持。

缺点:

1、与ASP一样,Java的一些优势正是它致命的问题所在。

2、缺少系统性的资料。

3、速度超慢

(三)PHP

优点:

1、一种能快速学习、跨平台、有良好数据库交互能力的开发语言。

2、简单轻便,易学易用。

3、与Apache及其它扩展库结合紧密。

4、良好的安全性。

缺点:

1、数据库支持的极大变化。

2、不适合应用于大型电子商务站点

3、安装复杂。

4、缺少正规的商业支持。

5、无法实现商品化应用的开发。

(四)CGI

优点:

1、它可以用很多种语言编写,比如C,C++,VB和Perl语言,在选择上有很大的灵活性.目前大多使用Perl编写CGI.

缺点:

2、是维护复杂,运行效率低下,主要表现在以下几个方面:

(1)CGI程序是以独立的进程方式运行的,这样,当用户访问数量增大时,会严重地损耗系统资源,大幅度地降低系统性能.

(2)CGI程序不是常驻内存的,因此,当用户频繁访问CGI程序时,会导致大量的磁盘操作,从而造成系统性能的下降.

(3)访问数据库的程序不容易编写.

由于CGI程序存在上述缺点,因此,随后又出现了FastCGI技术,它在CGI的基础上进行了一些改进,将CGI程序常驻在内存中,使得系统性能有了改善,但是,在大量用户访问时,它仍然会消耗过多的内存资源。

三、主流的Web服务器软件

如今主流的Web服务器软件主要由IIS或Apache组成。IIS支持ASP且只能运行在Windows平台下,Apache支持 PHP,CGI,JSP且可运行于多种平台,虽然Apache是世界使用排名第一的Web服务器平台,但是众所周知,Windows以易用而出名,也因此占据不少的服务器市场。

我们常用的开发组合:

IIS环境下

1.ASP+ACCESS

2.ASP+SQL SERVER

3.ASP.NET+ACCESS

4.ASP.NET+SQL SERVER

APACHE环境下

5.jsp+Oracale

6.JSP+MYSQL

7.PHP+MYSQL(一)

ASP,PHP,JSP,ASP.NET 这是当前比较流行的四种WEB网站编程语言,现在做网站大部分都是使用这几种语言中的其一 .

(一)ASP是基于WINDOWS平台的,简单易用,由于是运行在WINDOWS平台上,所以移植性不好,不能跨平台运行.但是国内现在大部分的网站都是使用它来开发的.

(二)PHP是当前兴起备受推崇的一种WEB编程语言,开源且跨平台,在欧美都比较的流行,最近在国内也很受许多网站开发者的欢迎.开发效率高,成本低!

(三)JSP是了SUN公司推出的一种网络编程语言,比较难学(是网上公认的),跨平台运行.安全性比较高,运行效率也比较的快.备受企业级的公司及银行金融机构使用.

主流网站开发语言之ASP.NET从某种意义上说应该是ASP版本的升级,但是它又不完全是从(四)ASP上升级来的,ASP.NET的推出是微软为了与 SUN公司的JSP在网络上的迅猛发展抵抗的,.NET架构现在有许多人都在学习,主要是开发的效率比较的高.但是还是基于WIN平台运行,不能跨平台.

可以说,asp确实快过时了,在未来jsp和asp.net将会有巨大的潜力,但php凭借其开源的特性也会占有一定份额,并且现在国内外多数网站都是用php,说明其优越性已经得到了相当的考验.

vb一般指vb6.0,是传统的win32编程。vb.net和asp.net是基于微软.net平台的语言。

说java好主要是因为java的j2ee部分做企业级开发很强大,而且跨平台 。

c#是.net平台上最好用的语言,现在只能运行在windows系统。

web开发方面.net和j2ee的竞争很激烈,难说以后鹿死谁手。

现在做网站大部分都是asp.net或jsp的,asp.net容易上手,比较普及,但是平台单一,jsp虽然上手难,但是跨平台,安全性高

大型网站很少有用windows系统的。

http://blog.sina.com.cn/s/blog_6c8d8f7001016i2k.html

===========================================================

http://www.cnblogs.com/duncannjm/articles/1686698.html

表8-1  四种后台语言的性能比较


后台界面


CGI


ASP(不含ASP.net)


PHP


JSP/Servlet


操作系统


几乎所有


Win32


几乎所有


几乎所有

(续表)


后台界面


CGI


ASP(不含ASP.net)


PHP


JSP/Servlet


服务器


几乎所有


IIS


非常多


非常多


执行效率




很快


极快


稳定性



中等



非常高


开发时间





中等


修改时间





中等


程序语言


不限,几乎所有


VB


PHP


目前仅支持Java


网页结合






学习门槛





较高


函数支持


不定





系统安全





极佳


使用网站




超多


目前一般


更新速度





较慢

原文地址:https://www.cnblogs.com/weekbo/p/8963541.html

时间: 2024-12-09 03:26:10

CGI、ASP、PHP、JSP、 ASP.NET网站开发语言比较的相关文章

主流网站开发语言

主流网站开发语言之ASP:ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和Visual BASIC类似,可以像SSI(Server Side Include)那样把后台脚本代码内嵌到HTML页面中.虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题.目前在微软的 .net 战略中新推出的ASP.net 借鉴了Java技术的优点,使用C Sharp (C#) 语言作为ASP.net的推荐语言,同时改进了以前ASP的安全性差等缺点.但是,使用ASP/ASP.n

JSP网站开发基础总结《二》

有了上一篇的学习,我相信大家对于JSP一定有了一定的认识,从今天开始我们真正开启JSP模式,如果你有HTML的基础,那学起JSP来也就方便了很多了,首先JSP做为网站开发语言,它与HTML有很多相似的地方.网站是什么?网站就是通过一个个网页叠加起来的,通过一定的相互关联,最后便组成了网站,那既然是由一页页的网页组成的,我们就先从网页开始进入我们JSP开发世界. JSP网页与传统的HTML网页,基本语法方面是相通的,HTML中的语法规则,在JSP网页中同样适用,不同的是HTML网页的后缀名为.ht

Asp.net入门-动态网站开发基础

本节将介绍: 1.网站搭建流程 2.动态网站相关基础概念 3.网页的访问原理 使用浏览器访问网站是我们几乎天天在做的事情.以前我们只需要关注网页内容,作为网站开发人员,从现在开始我们要关注更深层次的东西了. 1.怎样搭建一个网站 简单步骤是: (1)开发人员将网站做好 (2)购买互联网服务器主机空间. 这个主机空间是虚拟的,并不是真的买一台服务器.现在大部分都是云服务器了,价格根据性能和带宽而不同.当然,你也可以购买一台真正的服务器,然后托管到运营商那里(如电信.联通等).说简单点,就是你需要租

ASP、JSP、PHP 三种技术比较

ASP.JSP.PHP 三种技术比较 目前,最常用的三种动态网页语言有ASP(Active Server Pages),JSP(JavaServer Pages),PHP (Hypertext Preprocessor). 简 介 : ASP全名Active Server Pages,是一个WEB服务器端的开发环境,利用它可以产生和执行动态的.互动的.高性能的WEB服务应用程序.ASP采用脚本语言VBScript(Java script)作为自己的开发语言. PHP是一种跨平台的服务器端的嵌入式

JSP网站开发基础总结《一》

经过JAVASE的学习相信大家对JAVA已经不再陌生,那么JAVA都可以干什么呢?做算法.应用程序.网站开发都可以,从今天开始为大家奉上JAVAEE之JSP动态网站开发基础总结. 既然是动态网站开发,那它与传统的静态网站有什么区别呢?动态两字体现在什么地方?何为动态网站呢?相信学过HTML的小伙伴都知道,HTML是一个非常强大的网站开发语言,在没有出现动态网站开发语言之前,它被奉为网站开发利器,不过对于HTML网站开发存在一个问题,就是网站没办法实时更新,网站一旦开发完成不论经过多长时间,网站上

如何策划手机网站开发?

因为手机网站开发是一个新的领域,对于大部分市场人员,正在设计和正在建造它们的人来说都是一种挑战.无论如何,手机网站开发同样为你的品牌和创造力的展示还带来了大量的机会.只要你时刻谨记用户的需要第一的原则于心,忠于你的品牌以及遵守一些简单的原则,你马上就可以突出重围.下面一万户网络就带您一起看看如何策划一个手机WAP网站,希望对您有所帮助.手机网站内容策划如果说栏目是网站的骨架,那内容就是网站真正的核心,网页漂亮美观固然重要,可是真正能吸引和留住客户的是内容,所以,对内容的组织和提炼就变成了手机网站

Java开源工具:网站开发工具清单

美国程序员Jon Scott Stevens,公布了他的创业公司所使用的开发工具清单. 他的语言平台是Java,开发项目是一个网站(还未上线).所用到的工具都是开源的,可以免费得到. 在目前的创业者之中,用Java作为网站开发语言的人似乎很少.这当然不是没有原因的,Java看上去确实不像是最便捷的网站开发工具,给人的感觉是用起来麻烦又费事. 但是不可否认的是,Java的平台很成熟,各种工具包.工具库非常多,而且JVM虚拟机更是先进的技术.另外,Google App Engine平台提供免费的Ja

阳宇宸:WEB系统开发语言优劣比较

全面比较ASP.JSP.PHP .Perl..NET等WEB开发语言的优劣 ASP全名Active Server Pages,是一个WEB服务器端的开发环境,利用它可以产生和执行动态的.互动的.高性能的WEB服务应用程序.ASP采用脚本语言VBScript(Java script)作为自己的开发语言. PHP是一种跨平台的服务器端的嵌入式脚本语言.它大量地借用C,Java和Perl语言的语法, 并耦合PHP自己的特性,使WEB开发者能够快速地写出动态产生页面.它支持目前绝大多数数据库.还有一点,

阳宇宸:Web开发语言的策略性选择

对于一些复杂型和功能型网站建设来说,可能开发语言的选择是非常重要的一步.这一步的好与坏直接影响到以后网站程序的升级以及功能的扩展.目前,在国内主流的开发语言主要有ASP/ASP.NET,PHP,JSP.那么对于对网络技术不懂的客户来说,到底该选择哪种语言,可能会是一片茫然,听别人说,更是一头雾水.下面我们来分别分析这些语言的优缺点. PHP:钱字当头,PHP是免费,而ASP是付费的.APACHE+PHP+MYSQL+LIUNX完全免费.PHP升级快有目共睹,而ASP基本都不升级.PHP代码简练,