解决了。
ts官方就说重启php-fpm进程,后启后就没问题,过段时间就变老样了。
问题出在服务器硬件配置与php-fpm配置上。
最后我是通过设置:php-fpm的附加配置文件www.conf。
pm = dynamic
pm.max_children = 150 ;static下才起作用
pm.start_servers = 5 ;dynamic下才起作用
pm.min_spare_servers = 20
pm.max_spare_servers = 100
pm.max_requests = 500 ;dynamic下才起作用
重启php-fpm解决。
当然,如果你的服务器性能足够好,直接开启staic模式
参考:http://www.cnblogs.com/ahaii/p/5776809.html
附:
php.ini,php-fpm.conf,www.conf三个文件的区别
1 配置php.ini
php.ini是php运行核心配置文件:
######避免PHP信息暴露在http头中
expose_php = Off
######避免暴露php调用mysql的错误信息
display_errors = Off
######在关闭display_errors后开启PHP错误日志(路径在php-fpm.conf中配置)
log_errors = On
######设置PHP的扩展库路径
extension_dir = “/usr/local/php7/lib/php/extensions/no-debug-non-zts-20141001/”
######设置PHP的opcache和mysql动态库
zend_extension=opcache.so
extension=mysqli.so
extension=pdo_mysql.so
######设置PHP的时区
date.timezone = PRC
######开启opcache
[opcache]
; Determines if Zend OPCache is enabled
opcache.enable=1
######设置PHP脚本允许访问的目录(需要根据实际情况配置)
;open_basedir = /usr/share/nginx/html;
2 配置php-fpm.conf
php-fpm.conf是php-fpm进程服务的配置文件:
######设置错误日志的路径
error_log = /var/log/php-fpm/error.log
######引入www.conf文件中的配置
include=/usr/local/php7/etc/php-fpm.d/*.conf
3 配置www.conf(在php-fpm.d目录下)
www.conf这是php-fpm进程服务的扩展配置文件:
######设置用户和用户组
user = nginx
group = nginx
######根据nginx.conf中的配置fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;设置PHP监听
; listen = 127.0.0.1:9000 #####不建议使用
listen = /var/run/php-fpm/php-fpm.sock
######开启慢日志
slowlog = /var/log/php-fpm/$pool-slow.log
request_slowlog_timeout = 10s
######设置php的session目录(所属用户和用户组都是nginx)
php_value[session.save_handler] = files
php_value[session.save_path] = /var/lib/php/session