谈谈你对|谈谈cgi得速度问题

更新时间:2017-06-29 来源:编程 点击:

【www.hzclsc.cn--编程】

 关于php cgi 和asp的速度比较一直是一个争议的问题

本人初入门是从perl开始的,后来学习了asp和php
因为编程语言的简单,一段时间曾经迷上php。
后来用多了,便发觉这些语言各有优缺点。
我个人编程使用语言主要视乎程序的类型
(其中由于对php和perl较为熟悉,因此采用较多)

下面是我对asp,php,和perl使用的心得。

1.调试速度的比较:
其实,一般的cgi程序,这3种语言的速度比较是不明显的,这里面常常会有误区
,很多人采用不同的程序进行比较,但是由于这些程序结构和篇写人员的水平不一样。
往往程序速度的区别是由程序结构本身而非语言区别产生的。
我曾经在本地些个一个留言本,分别用3种语言比较(文本格式),结果发现本地执行的速度没有什么区别(win98上)
但是,如果写一个不断刷新的聊天室,在win98+iis上,明显asp快点(因为asp与iis)是集成的,而且是线程,而cgi和php
都属于外部调用的cgi,显然,繁忙的多人的http请求时,asp占优(iis服务器)。
另外测试文本格式的论坛程序,发现三种程序的处理速度区别不大,而当使用数据库的贴子数量很多的论坛的时后(同样在win98上)
使用IIS+cgi+mysql IIS+php+mysql的速度都不比IIS+asp+access慢,而使用apache+cgi+mysql要比iis+cgi+mysql快,可见这里主要的区别
与数据库类型和web服务器有关系。
而当一些人用一个IIS+ASP+ODBC(数据库)与IIS+CGI+文本 比较一个多贴论坛时,就断定asp比cgi或php快显然是不严谨的。
  另外一点,对于小型程序,不管那种语言一般运行的时间0.5秒左右,而从远端服务器下载一个网页就要10多秒左右,显然这种速度是相差很远的。

个人总结:在NT上编写例如聊天室,新闻等网页刷新率高的程序时,asp比较理想,而象论坛,搜索这类程序
     使用asp和cgi和php都可以选择(asp使用方便,而php.CGI可以获得较高稳定性)

个人心得:在NT上使用apache+mysql+php的效果要比iis+mysql+php好的多。

个人经验:提高效率的根本方法不是语言的选择,而是于平台的搭建,程序语言的结构和网页html代码的优化。
     一个被大家忽视的问题是臃肿的html代码比程序更影响速度!!!!
     举个例子,就拿这个论坛,大家有没有发现,发别贴子的速度很快而文章列表的速度较慢,大家可能以为是搜索数据库慢的原因,其实不然,当大家看到广告条出现的时候,
     程序已经执行完成,而剩下的时间都是下载html网页的时间(因为有大量的表格,因此影响浏览速度,浏览器在/table出现后才出表格)。

2.语言的性能:

  如果说程序的编程应用能力,显然php和asp与perl不在一个档次,perl的数组功能,字符处理功能,能领众多难题轻松解决,尤其perl的应用模块更是举不性数,为编程带来方便(不过,很多人没有使用这些模块的条件)。
perl在某些字符处理能力方面比语言老大C/C++还出色,这也是perl在互联网应用广的原因。
  对于php其实就象一个集成块语言,不很多元件集成一起,因此,虽然它的模块很小,但很多web功能集成在语言里,因此很多功能用很小的语句就能实现,因为语言简练,特别析合初学者使用,当是一些高级性能,和系统结合的性能不及perl,比asp也逊色。
但是使用他编写程序,一定能节省你很多时间。
  对于asp,因为其商业原因,制约了很多性能,很多组件都要收费,源代码保密,显然没有上述语言的大度,同时局限面仅仅是windows。

个人心得: 要想提高你的web编程思维和总体水平一定要学习perl.
      初学者php是不错的选择。

3.资源性能。

  本人作了cgi和php的比较,cgi采用进程,php采用模块
cgi程序瞬间执行的CUP比php大,但执行完成以后马上退出CUP和内存(时间一般为0.0X秒)
而php则要占用好长一段时间(大概数分钟),另外cgi占用的内存比PHP小。
因此对于浏览量不选很大的程序(10万次/日)以下的程序用进程CGI比PHP更能节省服务器资源
而频繁执行的程序(10万次/日)以上会节省cup资源,如果把CGI编译到apache模块时,CGI比php能节省更多的内存
(注意:以上在两种语言都使用数据库程序的前提下的比较)。
而在linux上使用cgi+dbi连接mysql,与php连接mysql的时间区别不是很大。
  
  关于unix与NT性能的比较就不用说多说了(一个是高端产品,一个是普及产品),不在一个档次,
但是如果从普及面和入门来说,NT要占优

  本人结论,程序是否占资源,最主要的原因与程序结构有关系,
对于信息量大的程序,能够用数据库写时尽量用数据库。
当有数据检索时,用数据库优于dbm,用dbm优于文本。
而没有多条数据检索时正好相反,打开文本文件的速度要比连接数据库块。

本文来源:http://www.hzclsc.cn/ruanjianzixun/91.html

为您推荐

制作电音的软件|电音创作软件KORG将于明年登录Switch

如果你经常关注我们对任天堂Switch的报道,你可能还记得有家公司正在为Switch制作学习编程的软件,接下来要告诉各位,Switch不单可以用来编程,而且还可以作曲!日本知名的电子音乐作曲工作站软件游戏资讯

2020-12-05 17:04:48   做电音的软件   电音软件手机版  

【支付宝小程序在哪里找】支付宝小程序开发者公测地址 支付宝小程序申请公测网址

支付宝小程序目前已经开始公测了,为大家带来支付宝小程序开发者公测地址,支付宝小程序是手机应用嵌入支付宝客户端的一种方法,下面是支付宝小程序申请公测网址! 支付宝小程序开发者公测地址 特色能力开发服务成编程开发

2020-11-22 11:04:37   支付宝小程序怎么建立   支付宝小程序怎么开发  

[c罗]c++ vector用法详解 c++ vector用法总结

c++ vector是在c++中开发过程中c++ vector作为一个十分有用的容器,许多朋友还不是很清楚c++ vector用法,不知道c++ vector到底有什么优秀的用法,不用着急一起来看看编程开发

2020-11-22 11:04:37   pcba   c盘满了怎么清理  

【eclipse如何导出项目】eclipse怎么导出项目 eclipse导出项目教程

eclipse作为用户量十分大的编程开发软件,有许多新手用户朋友或者刚开始接触这款软件的朋友经常会出现在使用eclipse的时候不知道该怎么导出已经读取到软件中的项目,其实很简单,一起来看看ecli教你一招

2020-11-10 07:04:06   eclipse怎么导入项目   eclipse怎么打开项目  

jdk环境变量配置win10|JDK环境变量配置WIN7 WIN7JDK环境变量配置教程

JDK怎么进行环境变量配置一直是困扰着许多入门编程员的问题,许多用户朋友们如果重新换了一台设备,很容易出现不知道怎么进行环境配置的情况,不用担心,小编为大家带来了详细的在WIN7系统下如果进行JDK教你一招

2020-11-07 11:05:38   jdk安装与环境变量配置   安装jdk并配置环境变量