ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

PHP-php介绍

2019-09-23 18:08:03  阅读:231  来源: 互联网

标签:CGI web php fpm 介绍 Nginx 进程 PHP


PHP是什么?

  • php是一门开源脚本语言又称"超文本预处理器",一般主要用于网站编程,同时因为其开源的原因,很多资料都是可以免费获取。同时也因为php程序具有成本低,速度快,移植性高,函数库支持丰富等特点,深受it人事的喜爱。

php-fpm是什么?

  • 什么是CGI?
    公共网关接口(Common Gateway Interface,简称CGI),是外部扩展应用程序与web服务器交互的一个标准接口。程序猿只要通过CGI协议去编写程序,就可以实现与web server进行通信。CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。
  • 什么是fastcgi?
    用户通过程序与web server进行交互的时候,发现web server没收到一个请求,就会使用fork函数创建一个cgi进程,等请求结束的时候在干掉进程,当并发高的时候,严重拖垮web server性能,因此fastcgi也随着但是,通过fastcgi标准写的程序完全可以解决 CGI存在的问题,大大提升了进程的使用率,提升性能。FastCGI在每次处理完请求后,不会干掉进程,而是保留进程,等待二次/三次连接,这样可以极大提升进程的使用率,并且创建,删除进程都是要额外消耗系统资源的。
  • 什么是php-fpm?
    php-fpm是一个phpfastcgi的管理器,在php5.33版本之后php已经集成了php-fpm功能,通过php-fpm,php可以有效的控制内存,进程,平滑重载php.ini等功能,在php编译安装的时候带-enable-fpm参数就可以开启此功能。
    在PHP跟Nginx的使用中,Nginx是通过php-fpm这个服务来处理php文件,也就是没有php-fpm,Nginx没法处理php文件。

php-fpm与Nginx交互的过程

*php-fpm与Nginx工作的过程
在这里插入图片描述
1.首先由浏览器通过http协议发送请求给Nginx。
2.Nginx接受到请求,首先对加载Nginx.conf配置对请求进行判断,发现是php资源,就直接通过location定义的php模块将数据转给后端的php-fpm进行处理。
3.php-fpm master进程会时刻监督本地的9000端口,一旦发现有请求过来直接将交给php-fpm work(子进程)进行处理,work进程会调用php-cgi解析器并且生成php执行环节在去解析对应的php文件。
4.解析完成后将响应(结果)传给Nginx,在由Nginx返回给浏览器。

标签:CGI,web,php,fpm,介绍,Nginx,进程,PHP
来源: https://blog.csdn.net/yts1115084429/article/details/101214232

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有