php7安装参数编译

系统:Centos6.8

软件包:php-7.0.14.tar.gz

yum install bzip2 bzip2-devel -y
yum install  curl curl-devel -y
yum install php-mcrypt  libmcrypt  libmcrypt-devel -y
yum install readline-devel -y 

./configure --prefix=/usr/local/php7 --enable-fpm \
--with-zlib \
--enable-inline-optimization \
 --disable-debug \
--disable-rpath \
 --enable-shared \
--enable-opcache \
--with-fpm-user=www \
--with-fpm-group=www \
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-gettext \
--enable-mbstring \
--with-iconv \
--with-mcrypt \
--with-mhash \
--with-openssl \
--enable-bcmath \
--enable-soap \
--with-libxml-dir \
--enable-pcntl \
--enable-shmop \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-sockets \
--with-curl \
--with-zlib \
--enable-zip \
--with-bz2 \
--with-readline 

php-fpm 的重启、终止操作命令:

1.统计php-fpm进程数:
 ps aux | grep -c php-fpm
2.查看php-fpm的进程:
 ps -ef |grep php-fpm
3.查看php的版本:
 php-fpm -v
4.查看php编译的参数:
/usr/local/php7/bin/php -i |grep configure
5.查看php的僵死进程,并杀死僵死进程.
ps -A -o stat,ppid,pid,cmd | grep -e '^[Zz]' | awk '{print $2}' | xargs kill -9

php-fpm的启动参数:

#测试php-fpm配置
/usr/local/php7/sbin/php-fpm -t
/usr/local/php7/sbin/php-fpm -c /usr/local/php7/etc/php.ini -y /usr/local/php7/etc/php-fpm.conf -t

#启动php-fpm
/usr/local/php7/sbin/php-fpm
/usr/local/php7/sbin/php-fpm -c /usr/local/php7/etc/php.ini -y /usr/local/php7/etc/php-fpm.conf

#关闭php-fpm
kill -INT `cat /usr/local/php7/var/run/php-fpm.pid`

#重启php-fpm
kill -USR2 `cat /usr/local/php7/var/run/php-fpm.pid`

 

首先,我们关注下 PHP-FPM 的运行方式:

static :表示在 `php-fpm` 运行时直接 `fork` 出 `pm.max_chindren` 个子进程,
dynamic:表示,运行时fork出 start_servers个进程,随着负载的情况,动态的调整,最多不超过max_children个进程。
一般推荐用 static。
优点是不用动态的判断负载情况,提升性能;
缺点是多占用些系统内存资源。
1、php-fpm优化参数介绍
他们分别是:pm、pm.max_children、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers。

pm:表示使用那种方式,有两个值可以选择,就是static(静态)或者dynamic(动态)。
在更老一些的版本中,dynamic被称作apache-like。这个要注意看配置文件的说明。

下面4个参数的意思分别为:

pm.max_children:静态方式下开启的php-fpm进程数量
pm.start_servers:动态方式下的起始php-fpm进程数量
pm.min_spare_servers:动态方式下的最小php-fpm进程数
pm.max_spare_servers:动态方式下的最大php-fpm进程数量

区别:

如果dm设置为 static,那么其实只有pm.max_children这个参数生效。系统会开启设置数量的php-fpm进程。
如果dm设置为 dynamic,那么pm.max_children参数失效,后面3个参数生效。
系统会在php-fpm运行开始 的时候启动pm.start_servers个php-fpm进程,
然后根据系统的需求动态在pm.min_spare_servers和pm.max_spare_servers之间调整php-fpm进程数.

 

posted @ 2017-09-20 14:21  梦徒  阅读(1188)  评论(0编辑  收藏  举报