首页 > 其他分享 >cgi和fastcgi的区别

cgi和fastcgi的区别

时间:2024-10-21 10:47:14浏览次数:5  
标签:cgi CGI 请求 区别 fastcgi 进程 服务器 FastCGI

CGI:公共网关接口”(Common Gateway Interface),通过这个接口,“程序 ”可以对服务器 与客户端 交换的信息 做一些事情 。CGI有很多缺点,每接收一个请求就要fork一个进程处理,只能接收一个请求作出一个响应。请求结束后该进程就会结束。

FastCGI会事先启动起来,作为一个cgi的管理服务器存在,预先启动一系列的子进程来等待处理,然后等待web服务器发过来的请求,一旦接受到请求就交由子进程处理,这样由于不需要在接受到请求后启动cgi,会快很多。FastCGI使用进程/线程池来处理一连串的请求。这些进程/线程由FastCGI服务器管理,而不是Web服务器。 当进来一个请求时,Web服务器把环境变量和这个页面请求通过一个Socket长连接传递给FastCGI进程。FastCGI像是一个常驻型的CGI,它可以一直执行,在请求到达时不会花费时间去fork一个进程来处理(这是CGI对位人诟病的fork-and-execute模式)。正是因为它只是一个通信协议,它还支持分布式的运算,即FastCGI程序可以在网站服务器以外的主机上执行并且接受来自其他网站服务器的请求

php的几种运行模式CLI、CGI、FastCGI、mod_php - 范仁义 - 博客园 (cnblogs.com)

标签:cgi,CGI,请求,区别,fastcgi,进程,服务器,FastCGI
From: https://www.cnblogs.com/daizichuan/p/18488904

相关文章

  • 合并分支:Git merge 和 rebase 的区别
    结论:直接merge会产生合并提交记录,而rebase是会形成线性的提交记录,如果该合并是有意义的合并,则可以使用merge,记录合并提交记录,如果是日常个人的合并,则使用rebase,减少无意义的合并提交记录使用rebase要注意在自己的分支上进行,不然会导致其他人由于指向的commitid不同,导致同步问......
  • Axios和Fetch区别
    1、基本用法GETPOST(Json)POST(formdata)数据流中止请求请求超时进度监控通用配置拦截器2、区别AxiosFetch底层实现第三方库,基于XMLHttpRequest现代浏览器自带的底层API特点使用更简洁使用更灵活体积非浏览器自带,需安装,占用一些体积浏......
  • 三,TreeMap和HashMap,TreeSet和HashMap的区别以及方法使用上的不同
    TreeMap和HashMap的区别TreeMap:基于红黑树实现。提供了范围查询和排序功能。所有操作的时间复杂度为O(logn)。不允许键为null。键必须实现Comparable接口或提供一个Comparator。HashMap:基于哈希表实现。提供快速的查找、插入和删除操作。平均时间复杂度为O(1),......
  • Java 常用 IO 类说明以及字节流与字符流的区别说明和案例示范
    1.JavaIO类概述1.1什么是IOIO是Input/Output(输入/输出)的缩写,代表了程序与外部环境(如文件、网络、设备等)之间进行数据交换的操作。在Java中,IO操作广泛用于文件读取、写入、网络通信等场景。Java提供了强大的IO类来简化这些操作,并按照不同的数据类型(如字节、......
  • 【一文理解】下采样与上采样区别
    目录下采样上采样注意下采样原理对图像进行1/n下采样,原图像分辨率为H*W,下采样分辨率变为(H/n)*(W/n)作用压缩FeatureMap降维减少提取特征降低模型计算量避免模型过拟合本质过滤无关信息,保留关键信息方法主要通过是池化层或卷积层进行下采样采用stride为2的池化......
  • 神经网络与机器学习的区别及例子?CNN是有监督学习吗?
    一、神经网络和机器学习在概念上有所区别,但也紧密相关。以下是它们的主要区别以及一些例子:区别:定义:机器学习:是人工智能的一个分支,使计算机系统能够利用数据来不断改进性能,无需明确编程。它侧重于开发算法,让计算机通过经验学习。神经网络:是一种受人脑结构启发的机器学习算......
  • JDBC:Statement和PreparedStatement的区别分析
    StatementStatement用于执行静态的SQL查询,通常在SQL语句不会频繁变化的情况下使用。特点不支持参数化查询:SQL语句直接嵌入在代码中,在语句中添加参数较为麻烦。存在SQL注入风险:由于直接拼接字符串,容易受到SQL注入攻击。性能较低:每次执行SQL语句时,数据库都需要......
  • Vue 2 和 Vue 3 之间响应式区别
    一、响应式系统Vue2的响应式系统Vue2使用了基于依赖收集的观察模式。对于对象,Vue2会遍历对象属性,为每个属性创建一个Watcher实例,并在访问这些属性时收集依赖。当属性改变时,会通知相关的Watcher更新视图。Vue2响应式原理代码示例Javascript深色版本//Vue2......
  • jython和python的区别是什么
    我们通常意义上说的python是cpython,也就是完全用C实现的python,它支持C的扩展,不支持java什么的扩展。jython是完全用jython实现的python,它支持用java扩展,貌似无法用C扩展。jython用途比较少。主要在两个场景下:1、操作系统不提供cpython,只有JAVA可以用。比如sun工作站,或者......
  • abort与close有哪些区别
    abort与close的区别是:1、功能不同;2、用法不同;3、影响范围不同;4、错误处理不同。abort函数用于终止程序的执行,一旦调用该函数,程序会立即停止并退出。而close函数用于关闭打开的文件,关闭后该文件不能再被访问或操作。一、abort与close的区别在计算机编程中,abort和close都是用来......