您的位置:首页 > 运维架构 > Nginx

php如何通过php-fpm和nginx一起协调愉快的工作

2016-08-01 00:00 381 查看
摘要: php-fpm是负责管理线程的,所以要进行性能优化的时候,主要从它同时开启多少个线程等参数有关。

nginx 是一个代理服务器,其作用是把客户端请求转发给服务,然后直接输出服务的响应内容。
php 作为非常通用的web 服务端脚本语言,具有非常高性能的处理速度。

现在最流行的web服务器搭建环境 采用的是 linux 操作系统 ,配置一台nginx 代理服务器,然后代理服务器把客户端请求 转发到 php 。php 程序运行后把结果返回给nginx 输出给客户端。

当 然,nginx 代理服务器 要和php 配合工作,中间需要一个 php-fpm ,php-fpm是 一个php 的 fastcgi进程管理器。fastCGI 能高效管理php-CGI的内存和进程网问题,而php-CGI是 php实现 CGI所有功能的一个模块。实现了CGI 功能的程序,都能提供 web服务。所以,php能作为web服务端语言。

php- fpm既然 是一个 进程管理器, 负责php的多线程工作。 本身php 语言是单线程,或者是没有线程这一说法。 php-fpm可以 同时管理多个php运行实例,这样就能有效提高了服务器的处理性能,处理大访问量的时候,就可以同时发起多个php实例来处理客户端的请求。

php-fpm是负责管理线程的,所以要进行性能优化的时候,主要从它同时开启多少个线程等参数有关。

nginx 是负责转发请求的,所以要从 缓存方面进行优化。当nginx 从php-CGI获取到 数据后,可以进行缓存,让进行同样请求的数据,直接从缓存读取,而不用再去请求 php-CGI 重新执行程序产生数据,这样就可以有效的减少cpu的处理量,提高性能。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php-fpm