php-fpm服务一般情况下我们只会配置一个php-fpm了,如果我们碰到要实现多实例php-fpm服务要如何来配置呢,下面一起来看看吧。 这里是在LNMP环境的基础上配置多实例的过程。因为我在使用的是LNAMP环境,所以额外编译一份php到/usr/local/php-fpm/,配置文件在/etc/php-fpm/,并在此基础上做的笔记。 先修改三个值:

  1. 以static方式,也就是固定进程数量运行php-fpm。 本文仍 以dynamic方式运行
  2. 每个实例建立100个worker进程。(不宜太多,避免不稳定),本文建立25个
  3. 每个进程执行完200次请求即退出。(避免PHP的内存泄露问题,也就是内存越用越多)

位置: /etc/php5/fpm/pool.d/www.conf

sed -i 's#pm.max_children = 5#pm.max_children = 25#' /etc/php5/fpm/pool.d/www.conf
sed -i 's#;pm.max_requests = 500#pm.max_requests = 500#' /etc/php5/fpm/pool.d/www.conf

拷贝: cp /etc/php5/fpm /etc/php5/fpm2

sed -i 's#listen = 127.0.0.1:9000#listen = 127.0.0.1:9001#' /etc/php5/fpm2/pool.d/www.conf

拷贝: cp /etc/init.d/php5-fpm /etc/init.d/php5-fpm2

修改一下几处,其实就是把对应地方改为fpm2

NAME=php5-fpm2
...
DAEMON_ARGS="--daemonize --fpm-config /etc/php5/fpm2/php-fpm.conf"
PIDFILE=/var/run/php5-fpm2.pid
...
/usr/lib/php5/php5-fpm2-checkconf || return
...

拷贝: cp /usr/lib/php5/php5-fpm-checkconf /usr/lib/php5/php5-fpm2-checkconf

修改对应地方改为fpm2

errors=$(/usr/sbin/php5-fpm --fpm-config /etc/php5/fpm2/php-fpm.conf -t >& | grep "\[ERROR\]" || true);

配置完毕,然后启动

service php5-fpm2 start

毫无反应!!!!

关键是,连报错提示都木有。。。

排错中。。。。。

发现在 [ -x "$DAEMON" ] || exit  时已经退出执行了,解决办法:cp /usr/sbin/php5-fpm /usr/sbin/php5-fpm2 。

同样问题依旧出现,继续,发现进入了 if init_is_upstart; then 条件判断,导致退出执行,无奈之举 注释了exti 语句。。感觉欠妥,但一时不知更好的处理方法,如果有更好的解决办法,,烦请告知。。在此多谢

终于,,,,可以启动了。。

配置nginx

位置: /etc/nginx/sites-enabled/default

upstream phpbackend {
server 127.0.0.1: weight= max_fails= fail_timeout=;
server 127.0.0.1: weight= max_fails= fail_timeout=;
} server {
listen default_server;
listen [::]: default_server ipv6only=on; root /usr/share/nginx/html;
index index.php index.html index.htm; # Make site accessible from http://localhost/
server_name localhost; location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a .
try_files $uri $uri/ =;
# Uncomment to enable naxsi on this location
# include /etc/nginx/naxsi.rules
} location ~\.php$ {
try_files $uri = ;
#fastcgi_pass 127.0.0.1:;
fastcgi_pass phpbackend;
fastcgi_index index.php;
include fastcgi_params;
} }

重启nginx,ok

访问phpinfo,可正常访问

在这有几点疑问,不知道大家是否有同样疑惑,或者知道答案的小伙伴烦请共享下知识,哈哈哈哈

php-fpm明明开启了多实例运行,9000和90001端口,但是通过访问phpinfo看到的信息一直访问的配置文件是/etc/php5/fpm下面的,即便通过日志看到的访问的是9001端口,配置依旧是/etc/php5/fpm。。纳闷

ubuntu下php-fpm多实例运行配置的更多相关文章

  1. Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法

    Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法 最近由于老师要求要在Ubuntu下QT上进程多线程服务器的开发,虽然只是单纯的调用qt的network模块,但是为了避免麻烦,我 ...

  2. ubuntu 下搭建apache+python的运行环境

    ubuntu下怎么搭建apache+python运行环境,可以参考http://www.01happy.com/ubuntu-apache-mod-python/ ,这里只是简单的记录下步骤,本文主要 ...

  3. Ubuntu 下 firebird 数据库的安装和配置

    Ubuntu 下 firebird 数据库的安装和配置 1.简介 本文主要是 Ubuntu 下 firebird 数据库的安装和目录迁移,同样适用于 Debian 系统:Ubuntu 20.0.4 f ...

  4. Ubuntu 下 Apache2 和 PHP 服务器环境配置

    Ubuntu 下 Apache2 和 PHP 服务器环境配置 1.简介 本文主要是 Ubuntu 下 Apache2 和 PHP 服务器环境配置方法,同样适用于 Debian 系统:Ubuntu 20 ...

  5. Ubuntu下软件安装方式、PATH配置、查找安装位置

    Ubuntu 18.04, 安装方式 目前孤知道的Ubuntu下安装软件方式有3种(命令): 1.make 2.apt/apt-get 3.dpkg 方式1基于软件源码安装,需要经历配置(可选).编译 ...

  6. Ubuntu下增加eclipse菜单图标并配置java path(解决点击图标不能启动eclipse的问题)

    Ubuntu下增加eclipse菜单图标 Ubuntu的菜单图标在/usr/share/applications目录下. 1. 在/usr/share/applications目录下新建eclipse ...

  7. ubuntu下使用code::blocks编译运行一个简单的gtk+2.0项目

    在具体的操作之前,首先需要安装一些必要的软件.ubuntu下默认安装了gcc,不过缺少必要的Header file,可以在命令行中输入下面的指令安装build-essential套件:sudo apt ...

  8. ubuntu 下安装eclipse &java环境配置

    前面有一篇的博客写的是ubuntu下安装eclipse和java环境的配置.当时是安装网上的攻略进行的 ,当然也是能够成功的. 近期把那台电脑送人了 ,仅仅好在自己的这台电脑上又一次安装一次了 ,唯一 ...

  9. Ubuntu下LaTex中文环境安装与配置

    转载自:http://www.linuxidc.com/Linux/2012-06/62456.htm LaTeX是一个强大的排版软件,但是其最初只是为英文排版而设计的.为了使其能够胜任中文排版的重任 ...

随机推荐

  1. INFO: Ignoring response <403 https://movie.douban.com/top250>: HTTP status code is not handled or not allowed

    爬取豆瓣电影top250,出现以下报错: 2018-08-11 22:02:16 [scrapy.core.engine] INFO: Spider opened 2018-08-11 22:02:1 ...

  2. 西门子PLC存储器、地址区

    S7-1500 CPU的存储器 1.内部集成的存储器:工作存储器,保持性存储器,系统存储器 2.外插的SIMATIC存储卡:装载存储器去 装载存储器:断电信息不丢失,主要存储项目中程序块,数据块,工艺 ...

  3. 命令行 sql 将结果导出到文件

    1. into outfile filename; Mysql查询结果导出为Excel的几种方法 mysql> use world; # 使用 mysql 自带的 world 数据库 mysql ...

  4. EasyUI 表格点击右键添加或刷新 绑定右键菜单

    例1 在HTML页面中设置一个隐藏的菜单(前提是已经使用封装的Easyui) 代码: <div id="contextMenu_jygl" class="easyu ...

  5. dfs,bfs的二分匹配模板(模板题hdu1150)

    如果不懂匈牙利算法,请点击:该趣味算法http://blog.csdn.net/dark_scope/article/details/8880547 模板: //DFS版本下的二分匹配算法 http: ...

  6. (12)用css设计电子相册 {下}

    本篇学习资料讲解:        延续上一篇的学习资料,仍然介绍 使用css对电子相册进行排版 和 侧面强调“盒子模型.标准流.浮动和定位”的重要性. 上篇学习资料介绍的“阵列模式电子相册”,如果也能 ...

  7. C# BitmapData使用说明

    C# BitmapData使用说明msdn关于BitmapData原文解释地址:http://msdn.microsoft.com/zh-cn/library/5ey6h79d(v=vs.110).a ...

  8. 最小公倍数的最小和(Minimum Sum LCM )

    #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> u ...

  9. hdu1162 Eddy's picture 基础最小生成树

    #include <cstdio> #include <cmath> #include <cstring> #include <algorithm> # ...

  10. AtCoder Regular Contest 081 F - Flip and Rectangles

    题目传送门:https://arc081.contest.atcoder.jp/tasks/arc081_d 题目大意: 给定一个\(n×m\)的棋盘,棋盘上有一些黑点和白点,每次你可以选择一行或一列 ...