cgi和fastcgi的区别

最早的Web服务器只处理静态的html文件

随着技术的不断发展,网站越来越复杂,然后出现到动态网站,但是服务并不能直接运行php,asp这个的动态语言文件
然后出现了cgi,cgi只是接口协议,
cgi是怎么执行动态请求的
web服务器接受到请求,然后根据内容,fork一个新进程,这个进程会把处理完的数据返回给web服务器,最后web服务器把内容发送给用户,刚才fork的进程也随之退出,如果下次用户还请求改动态脚本,那么web服务器又再次fork一个新进程。这个方式的问题在与每次请求都要新开一个进程,用完之后又要关闭,这是CGI最为人诟病的fork-and-execute 模式,效率上比较低
后来出现了一种更高级的方式,web服务器收到一个请求时,他不会重新fork一个进程(因为这个进程在web服务器启动时就开启了,而且不会退出),web服务器直接把内容传递给这个进程,这个进程收到请求后进行处理,把结果返回给web服务器,最后自己接着等待下一个请求的到来,而不是退出。 这就是fastcgi。效率上比cgi高很多
我在网上找了两张解释比较好的图
cgi这里写图片描述
fastcgi
这里写图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值