Nginx服务器起到的作用
服务器分为两类:
- 前端服务器。负责HTTP请求的解析与转发,或者处理静态请求。轻量级,并发量高,常常用作反向代理、负载均衡等。说白了,就是负责请求发到哪里,或者取现成的文件之类的。
- 应用服务器。负责调用某一种语言的解释器,或某种语言写的、已经编译好的程序,接收HTTP请求中的各个参数,按照开发者的意图做出动作,并生成结果返回给调用方。
Nginx一般用作前端服务器,解析HTTP请求,并把请求传递到下一个地方(下一台服务器,或者是应用服务器程序,或者是……)。
FastCGI
CGI,全称Common Gateway Interface,是应用服务器与语言相关的处理程序之间的接口。
处理程序实现这个接口,应用服务器调用这个接口,传入HTTP中的各参数(方法,URL,表单……),实现动态请求。不过这么做也有个缺点,每次收到请求时,应用服务器都要新建一个进程,调用处理程序,使用完之后就结束这个进程。进程的建立与释放都比较消耗资源,因此这么做的效率并不高。
FastCGI是对CGI的改进,它随着Nginx服务一同启动并驻留内存,当请求到达时,处理之,处理完之后并不结束这个进程,而是继续等待下一次连接。
PHP-fpm与PHP-cgi
PHP-cgi是PHP语言的解释器。按照最初的模式的话,每次请求到达,都要开一个新的进程启动PHP-cgi,重新载入配置、数据结构,初始化运行环境。更新PHP配置之后,需要重启P

本文探讨了Nginx作为前端服务器的角色,FastCGI和CGI的区别,以及PHP-fpm如何提高PHP运行效率。通过配置PHP-fpm与Nginx,实现动态请求的高效处理。
订阅专栏 解锁全文
753

被折叠的 条评论
为什么被折叠?



