-
您的位置:首页 → 精文荟萃 → 软件资讯 → 谈谈CGI的开发
谈谈CGI的开发
时间:2004/10/7 19:13:00来源:本站整理作者:蓝点我要评论(0)
-
现在这年头,各种web开发技术各领风骚,php,ASP,jsp都是比较时髦的,于是人们似乎把CGI淡忘了,其实CGI最受诟病的是它的性能比较差,占用的系统资源比较高。许多程序员因此觉得CGI没有前途。
实际上,CGI除了传统的优点如:安全性高,接口标准简单,易于用不同语言实现外,近些年来出现的如fastcgi和mod_perl等技术已经可以弥补它在速度、资源方面的缺点。
下面以fastcgi技术为例简单说明:
传统CGI技术之所以速度慢,主要是因为一般 CGI每一次启动都要启动一个进程,如果有1000人同时在一个聊天室里聊天,那么就会产生1000个进程。对于有后台数据库的CGI,意味着每次请求都是一次数据库连接、查询、断开的过程。这样的问题即使用C语言也不能解决,而像perl这样的解释语言更增加了启动解释程序的负担。
fastcgi的设计思想就是启动一个cgi进程以后不退出,一般情况下只要进行一次的操作如数据库连接、sql语句的准备都可以在启动时完成,以后再有新的请球,就只要直接查询,不需要解释、连接数据库、产生新进程,由此可以大大提高系统性能。
一个简单的例子:
#!/bin/perl
Print “Content-type : text/html\n\n”;
Print “I Love yuzi”;
这样的程序,每一次都要启动一个进程。
而使用了FCGI模块以后:
use FCGI;
while(FCGI::accept() >=0 )
{
print "Content-type: text/html\n\n";
print "I Love yuzi”;
}
exit 0;
只有循环内部每次执行
而从cgi转向fastcgi是很简单的,只要把启动部分放在while循环外面,其它部分在while循环里完成。但是应当注意的是,一般情况我们写perl CGI程序的时候不注意资源的回收,让程序结束的时候自动回收,但在fastcgi环境下这就会产生问题,所以要养成use strict的习惯,用my $var定义变量。
相关阅读
Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
-
热门文章
360快剪辑怎么使用 36金山词霸如何屏幕取词百度收购PPS已敲定!3
最新文章
微信3.6.0测试版更新了微信支付漏洞会造成哪
360快剪辑怎么使用 360快剪辑软件使用方法介酷骑单车是什么 酷骑单车有什么用Apple pay与支付宝有什么区别 Apple pay与贝贝特卖是正品吗 贝贝特卖网可靠吗
人气排行
xp系统停止服务怎么办?xp系统升级win7系统方电脑闹钟怎么设置 win7电脑闹钟怎么设置office2013安装教程图解:手把手教你安装与qq影音闪退怎么办 QQ影音闪退解决方法VeryCD镜像网站逐个数,电驴资料库全集同步推是什么?同步推使用方法介绍QQ2012什么时候出 最新版下载EDiary——一款好用的电子日记本
查看所有0条评论>>