fastcgi(php中fastcgi和php-fpm是什么东西)

2025-02-12 13:30:06 0

fastcgi(php中fastcgi和php-fpm是什么东西)

本文目录

php中fastcgi和php-fpm是什么东西

首先要明白CGI是一个协议,方便程序员开发程序的,而fastcgi是cgi的一个改良版,优化了CGI的性能,php-fpm是实现了fastcgi的一个程序(当然,被官方收录了).而php-fpm是php的一种工作模式。以服务的形式接收服务器传来的php文件,处理返回。php一般还会以apache模块的形式工作.

什么是FastCGI

PHP的FastCGI使你的所有php应用软件通过mod_fastci运行,而不是mod_phpsusexec。FastCGI应用速度很快 是因为他们持久稳定。不必对每一个请求都启动和初始化。这使得应用程序的开发成为可能,否则在CGI范例是不切实际的(例如一个大型的脚本,或者一个需要 连接单个或多个数据库的应用)。 1. FastCGI 像是一个常驻 (long-live) 型的 CGI,它可以一直执行着,只要激活后,不会每次都要花费时间去 fork 一次 (这是 CGI 最为人诟病的 fork-and-execute 模式)。 2. FastCGI 可在任何平台上使用,Netscape Enterprise 及 IIS 都有 FastCGI 的模块可供使用,阿帕契 (Apache,以及利用 Apache 衍生出做的服务器) 上也有 mod_fastcgi 可用。 3. FastCGI 支持 C/C++、Java、PHP、Python、Ruby、Perl,Tcl 等程序语言。 4. FastCGI 的应用程序亦兼容于 CGI。即 FastCGI 的应用程序也可以当成 CGI 来执行。 5. 现有的 CGI 程序要改写成 FastCGI 非常简单,最少可能只需要多加入三行程序代码。 6. FastCGI 的侦错方式与 CGI 大同小异,只要带入程序所需的环境变量及参数,即可在命令列模式执行或侦错。 7. FastCGI 应用程序的写作方式与 CGI 类似,除了几项原则要特别注意外,FastCGI 的写作方式跟 CGI 几乎一样,与学习 Web Server API 比较起来, FastCGI 简单多了。 8. FastCGI 支授分布式运算 (distributed computing),即 FastCGI 程序可以在网站服务器以外的主机上执行并且接受来自其它网站服务器来的请求。 好处 1. PHP脚本运行速度更快(3到30倍)。PHP解释程序被载入内存而不用每次需要时从存储器读取,极大的提升了依靠脚本运行的站点的性能。 2. 需要使用更少的系统资源。由于服务器不用每次需要时都载入PHP解释程序,你可以将站点的传输速度提升很高而不必增加cpu负担。因为dll文件不再每次都载入了,那么数据库的持久连接也将可以起到它设计初的效果。 3. 不需要对现有的代码作任何改变。 潜在问题 1. 对所有的子目录(/home/USERNAME/public_html/php.ini)你只有一个可用的php.ini文件。这是优化网站代码所必需的。如果你需要多个php.ini文件以适应不同的脚本需要,你可以在任何子目录禁用PHP的快速CGI,而其余的地方则继续有效。 2. 你对PHP环境做的任何升级(如php.ini文件的改变)都有几分钟的延迟。这是因为为了更快的速度 你的php.ini文件已经被载入内存,而不是每次需要时再从存储器重新读取。

cgi/fastcgi占用率高

在web服务器配置中优化fastcgi配置文件参数。php-cgi进程并没有内存泄漏,php-cgi会在每个请求结束的时候回收脚本使用的全部内存,但是并不会释放给操作系统,而是继续持有以应对下一次PHP请求。这样做大概是为了减少内存碎片化或者解决从系统申请内存之后又释放回操作系统所需要的时间不可控问题。可是如果偶然一次PHP请求使用了诸如ftp或者zlib这样的大内存操作,那么将导致一大块系统内存被php-cgi持续占有,不能被利用。

如何通俗的解释cgi,fastcgi,php-fpm之间的关系

这个问题可以分两个层面讨论:1. PHP 解释器是否嵌入 Web 服务器进程内部执行mod_php 通过嵌入 PHP 解释器到 Apache 进程中,只能与 Apache 配合使用,而 cgi 和 fast-cgi 以独立的进程的形式出现,只要对应的Web服务器实现 cgi 或者 fast-cgi 协议,就能够处理 PHP 请求。mod_php 这种嵌入的方式最大的弊端就是内存占用大,不论是否用到 PHP 解释器都会将其加载到内存中,典型的就是处理CSS、JS之类的静态文件是完全没有必要加载解释器。2. 单个进程处理的请求数量mod_php 和 fast-cgi 的模式在每个进程的生命周期内能够处理多个请求,而 cgi 的模式处理一个请求就马上销毁进程,在高并发的场景下 cgi 的性能非常糟糕。 综上,如果对性能有极高的要求,可以将静态请求和动态请求分开,这时 Nginx + php-fpm 是比较好的选择。PS: cgi、fastcgi 通常指 Web 服务器与解释器通信的协议规范,而 php-fpm 是 fastcgi 协议的一个实现。

fastcgi(php中fastcgi和php-fpm是什么东西)

本文编辑:admin
: fastcgi,cgi,f,

更多文章:


transformer算法(从算法到硬件,2019年AI将如何演进)

transformer算法(从算法到硬件,2019年AI将如何演进)

本文目录从算法到硬件,2019年AI将如何演进35千伏变压器一次二次电流的算法从算法到硬件,2019年AI将如何演进人工智能在近些年来随着大数据的发展而受到了广泛的关注,市场对于人工智能的呼声也越来越高,但是在2018年人工智能也受到了一定

2025年2月14日 18:10

giant是什么意思(giant和castle的音标以及意思,哦哦还有,五年级下牛津英语M4U3 Story time,The giant’s garden全意思)

giant是什么意思(giant和castle的音标以及意思,哦哦还有,五年级下牛津英语M4U3 Story time,The giant’s garden全意思)

本文目录giant和castle的音标以及意思,哦哦还有,五年级下牛津英语M4U3 Story time,The giant’s garden全意思giant的意思giant huge large big 的区别giant和castle的音

2025年3月12日 17:10

except什么意思(except什么意思)

except什么意思(except什么意思)

本文目录except什么意思英语中,“besides““except““except for“究竟什么区别except与except for的区别except是什么意思except 和except for的区别except什么意思exce

2025年2月23日 12:20

gridview控件实现分页(在GridView里面,怎样既实现排序,又实现分页的功能呢)

gridview控件实现分页(在GridView里面,怎样既实现排序,又实现分页的功能呢)

本文目录在GridView里面,怎样既实现排序,又实现分页的功能呢GridView实现分页,上一页、下一页、、、要独立于控件asp.net如何实现gridview控件进行分页并带有查询的代码主从表显示从表的Gridview怎么实现分页Dat

2025年2月16日 20:20

discuz应用中心退款(关于discuz论坛数据删除和恢复的问题)

discuz应用中心退款(关于discuz论坛数据删除和恢复的问题)

本文目录关于discuz论坛数据删除和恢复的问题discuz应用中心插件不能卸载怎么办如何使用Discuz,论坛中的应用中心discuz管理没有应用中心,我登陆后台管理根本没有应用选项,我想安装模板但是要绑定QQ还要后台登陆求解!discu

2025年3月6日 01:10

distance可数吗(distance是可数名词吗)

distance可数吗(distance是可数名词吗)

本文目录distance是可数名词吗distance是可数名词,还是不可数名词distance是可数名词吗可数distance n.距离, 路程遥远, 远离; 远方, 远处(时间的)间隔, 一长段时间冷淡, 疏远差异, 悬殊

2025年2月10日 02:00

c语言怎么获取数组的长度?数组的大小

c语言怎么获取数组的长度?数组的大小

本文目录c语言怎么获取数组的长度数组的大小C语言中计算数组长度的方法是什么数组定义的最大长度是多少数组长度怎么计算 mJAVA怎样获取数组长度数组的长度一定是固定的吗C语言学到数组了,感觉有点难,你能举例子说说数组怎么用吗使用数组要注意什么

2025年3月14日 11:00

reward for(reward sth for sb 对吗)

reward for(reward sth for sb 对吗)

本文目录reward sth for sb 对吗reward sb for sth是什么意思用reward…for造句,用上定语从句reward sth for sb 对吗不对reward主动句中常见搭配:reward sb.for sth

2025年3月19日 16:20

log函数运算公式换底公式(log换底公式是什么)

log函数运算公式换底公式(log换底公式是什么)

本文目录log换底公式是什么log函数加减运算log换底公式是对数函数的换底公式是什么log换底公式是什么log换底公式是:loga(N)=logb(N)/logb(a)。证明:loga(N)=x,则a^x=N,两边取以b为底的对数,log

2025年3月27日 05:40

DIS是什么?Dis是什么意思,Dis的解释

DIS是什么?Dis是什么意思,Dis的解释

本文目录DIS是什么Dis是什么意思,Dis的解释discuz x2怎么开启gzip电脑开机有时候显示Remove disks or other media Press any key to restartDIS是什么DIS指的是数字系统。

2025年2月11日 00:00

四平青年第二部片尾曲叫什么?四平青年2浩哥给周华健点的歌叫什么名

四平青年第二部片尾曲叫什么?四平青年2浩哥给周华健点的歌叫什么名

本文目录四平青年第二部片尾曲叫什么四平青年2浩哥给周华健点的歌叫什么名四平青年第二部上浩哥他们几个在皮卡车上唱的那个曲叫啥名,知道的给我回复一下,谢谢四平青年第二部叫什么四平青年第二部片尾曲叫什么2.《布列瑟农》 马修连恩 插曲时间:04:

2025年3月3日 05:50

transfers(government transfers是什么意思)

transfers(government transfers是什么意思)

本文目录government transfers是什么意思亚马逊标准发票中transfers是正数是什么意思transfer是啥意思transfers in和transfers out的区别transfer是什么意思government t

2025年3月28日 00:30

backgroundimage图片不显示(css设置背景图片不显示问题)

backgroundimage图片不显示(css设置背景图片不显示问题)

本文目录css设置背景图片不显示问题css的background-image图像显示不出来的原因为什么我在css中设定的背景图片在浏览的时候不显示Css设置背景图片不显示的问题background url 插入图片 显示不出来,HTML文件

2025年2月18日 05:40

convertlab公司(上海数字营销营销实验室convertlab怎么样)

convertlab公司(上海数字营销营销实验室convertlab怎么样)

本文目录上海数字营销营销实验室convertlab怎么样哪家公司营销云做得好上海数字营销营销实验室convertlab怎么样Convertlab(上海欣兆阳信息科技有限公司)成立于2015年,致力于搭建数字营销枢纽,一站式营销中台,让企业可

2025年3月14日 02:00

什么叫背景?在html中怎样使背景图片拉伸,平铺,居中

什么叫背景?在html中怎样使背景图片拉伸,平铺,居中

本文目录什么叫背景在html中怎样使背景图片拉伸,平铺,居中“背景”是什么意思在html代码中怎么让背景图片居中什么是背景白色背景的代码是#ffffff ,那其他颜色的代码是什么啊背景是什么什么叫背景背景的主要作用是渲染主体的最大效果和作用

2025年2月17日 05:50

英国的巨人dannyd大(英国的巨人dannyd有多大)

英国的巨人dannyd大(英国的巨人dannyd有多大)

本文目录英国的巨人dannyd有多大丹尼尔的详细资料英国的巨人dannyd有多大英国的巨人dannyd有15岁。英国少年布拉德利·费希尔只有15岁,但是人们都对他仰而视之。身高2.1米的他比学校最高的同龄女孩(身高1.4米)高出76厘米。巨

2025年4月4日 00:00

forums官网(SP版yonex羽毛球拍怎么查询真伪)

forums官网(SP版yonex羽毛球拍怎么查询真伪)

本文目录SP版yonex羽毛球拍怎么查询真伪谁知道魔兽世界美国官方论坛地址新华书店的官方网是什么 谁知道搜狗手机输入法的官方论坛地址啊星际争霸2怎么网上对战SP版yonex羽毛球拍怎么查询真伪SP球拍真伪查询,有一个英文网站注册后,提交你的

2025年3月29日 00:20

sklearn pca(python sklearn pca降维前需要数据归一化吗)

sklearn pca(python sklearn pca降维前需要数据归一化吗)

本文目录python sklearn pca降维前需要数据归一化吗sklearn里的PCA+SVM人脸识别算法,到底是PCA什么python sklearn pca降维前需要数据归一化吗不用from sklearn.decompositio

2025年3月6日 10:50

jquerycdn菜鸟教程(jquery菜鸟提问)

jquerycdn菜鸟教程(jquery菜鸟提问)

本文目录jquery菜鸟提问如何提高Jquery加载速度jquery菜鸟提问声明变量的问题:var $ li_1 = $(“《li》《/li》“); $与li_1之间无空格.解决方法:var $li_1 = $(“《li》《/li》“);

2025年3月20日 16:10

appointing(appoint什么意思及同义词)

appointing(appoint什么意思及同义词)

本文目录appoint什么意思及同义词appaint过去式是什么appoint是什么意思appoint什么意思及同义词appoint什么意思及同义词沪江词库精选appoint是什么意思、英语单词推荐、用法及解释、中英文句子翻译、英语短语、词

2025年3月4日 16:20

近期文章

request setattribute(request.setAttribute();干什么用的)
2025-04-06 01:00:02
本站热文

harbor,port,pier的区别?谁能解释“harbour“(港口)与“pier“(码头)的区别
2025-02-22 17:40:03 浏览:18
ibatis foreach(ibatis 批量update操作)
2025-02-10 23:40:06 浏览:7
endless rain(endless rain表达什么情感)
2025-02-14 06:00:02 浏览:6
标签列表

热门搜索