php-fpm配置优化总结

需要结合配置nginx优化实现高并发,nginx优化请看 nginx配置优化
1、修改 php-fpm.conf 配置文件
vim /etc/php-fpm.conf
emergency_restart_threshold = 10 在指定时间内,如果失效的PHP-FPM子进程数超过这个值, PHP-FPM主进程就会优雅的重启.
emergency_restart_interval = 1m 设定emergency_restart_threshold设置采用的时间跨度

打开文件描述符的限制
rlimit_files = 655350
2、修改 www.conf 配置文件 配置进程池
vim /etc/php-fpm.d/www.conf

进程数
pm.max_children = 300;	静态方式	下开启的php-fpm进程数量
pm.start_servers = 20;	动态方式	下的起始php-fpm进程数量
pm.min_spare_servers = 5;	 动态方式	下的最小php-fpm进程数量
pm.max_spare_servers = 35;	动态方式	下的最大php-fpm进程数量

max_children 数量也可以根据 内存/30M 得到,比如8GB内存可以设置为100,那么php-fpm耗费的内存就能控制在 2G-3G的样子。
建议pm.max_spare_servers 设置为20。至于pm.min_spare_servers,则建议根据服务器的负载情况来设置,比较合适的值在5~10之间

最大处理请求数
pm.max_requests = 1000  #回收进程前, PHP-FPM进程池中各个进程最多能处理的HTTP请求数量. 这个设置有助于避免PHP扩展或库因编写拙劣而导致不断泄露内存

开启慢日志
request_slowlog_timeout = 5s	#如果当前的HTTp请求的处理时间超过指定的值,就把请求的回溯信息写入slowlog设置的指定的日志文件. 把这个设置的值设为多少,取决于你认为多长时间算久. 已开始可以设置为5s

service php-fpm restart  #重启php-fpm
3、修改 php.ini
vim /etc/php.ini

启用Zend OPcache(添加到配置文件里)
opcache.memory_consumption = 64       #OPcache 的共享内存大小
opcache.interned_strings_buffer = 16  #用来存储预留字符串的内存大小
opcache.max_accelerated_files = 4000  #操作码缓存中最多能存储多少个PHP脚本. 设置的值可以使200到100000之间的任何数
opcache.validate_timestaps =  0       #PHP不会检查PHP脚本的内容是否变化,手动清除缓存的操作码,在生产环境中设置为0,开发环境为1
opcache.revalidate_freq = 0           #检查脚本时间戳是否有更新的周期,以秒为单位。设置为 0 会导致针对每个请求, OPcache 都会检查脚本更新
opcache.fast_shutdown = 1

内存
memory_limit = 2048M  默认值是128M,2G内存分配512M。

处理会话
session.save_handler = 'redis'	需要安装php-redis. 把PHP默认的回话存储访问改为redis
session.save_path = '127.0.0.1:6379'

最长执行时间
max_execution_time = 5	#默认值是30秒.不想让PHP进程运行30秒.想让应用运行的特别快,所以设置为5S

缓存数据
output_buffering = 4096
imlicit_flush = false

真实路径缓存
realpath_cache_size = 64k

文件上传数(可不配置)
max_execution_time = 600  #每个PHP页面运行的最大时间值(秒),默认30秒
max_input_time = 600      #每个PHP页面接收数据所需的最大时间
memory_limit = 32m        #每个PHP页面所吃掉的最大内存
file_uploads = on         #是否允许通过HTTP上传文件的开关
upload_tmp_dir = /tmp     #文件上传至服务器上存储临时文件的地方
upload_max_filesize = 32m #允许上传文件大小的最大值
post_max_size = 32m       #表单POST给PHP的所能接收的最大值

service php-fpm restart  #重启php-fpm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值