这篇文章主要讲解了“php高并发报语法错误如何解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php高并发报语法错误如何解决”吧! php高并发报语法错误的解决办法:1、检查nginx的配置访问数或者连接数,并增加nginx的两个参数;2、确认php-fpm的worker进程是否够用,然后增加worker_connections进程的数量;3、禁用掉记录的慢日志即可。Nginx+Php高并发报502、504问题解决:最近在帮公司优化php项目。一边优化一边百度。这个项目访问量挺大的(平均每分钟请求在80000+)。
用了三台aws服务器。两台8核16G、一台4核16G。小的这台做Nginx并跑少量的php-fpm进程。基本上放上去就挂。访问全是502、504。因为项目是没有问题的,之前测试跑过了。然后就开始百度找问题。1、怀疑是nginx的配置访问数或者连接数太小了扛不住,然后就增加nginx的两个参数。每个进程允许的最多连接数,理论上每台nginx服务器的最大连接数为worker_processes*worker_connections
worker_connections5000;
一个nginx进程打开的最多文件描述符数目,理论值应该是最多打开文件数(ulimit -n)与nginx进程数相除
worker_rlimit_nofile20000;
php请求的超时时间和缓存等
fastcgi_connect_timeout300; fastcgi_send_timeout300; fastcgi_read_timeout300; fastcgi_buffer_size64k; fastcgi_buffers464k; fastcgi_busy_buffers_size128k; fastcgi_temp_file_write_size256k;
nginx设置完了 重启一下。。但是测试了一下 完全没反应。2、怀疑是php的配置问题。确认php-fpm的worker进程是否够用,如果不够用就等于没有开启一样计算开启worker进程数目:
ps-ef|grep'php-fpm'|grep-v'master'|grep-v'grep'|wc-l
计算正在使用的worker进程,正在处理的请求
netstat-anp|grep'php-fpm'|grep-v'LISTENING'|grep-v'php-fpm.conf'|wc-l
如果上面两个值接近可以考虑增加worker_connections进程的数量以及修改修改php-fpm.conf中的php进程数。无论是调大还是调小这几个参数都不行。。。。绝望了!修改了php-fpm.conf的日志级别log_level = debug。在error_log文件中看到了一下错误:
[29-Mar-201422:40:10]ERROR:failedtoptrace(PEEKDATA)pid4276:Input/outputerror(5) [29-Mar-201422:53:54]ERROR:failedtoptrace(PEEKDATA)pid4319:Input/outputerror(5) [29-Mar-201422:56:30]ERROR:failedtoptrace(PEEKDATA)pid4342:Input/outputerror(5)
于是,我又开始google这个错误。上面说需要禁用掉记录的慢日志;slowlog = /var/log/php-fpm/slow.log;request_slowlog_timeout = 15s。此时,我才知道php也是记录访问时请求比较慢的日志。然后打免费云主机域名开慢日志文件。发现全是php请求redis的错误日志。找到问题原因了,就是php请求redis数据的时候,应该是请求的连接数太多了。redis连接不上导致的问题。。因为此处的业务比较复杂,所以redis的key是多个字段拼接的。查询的时候是用的模糊查询。所有导致redis的性能下降,后面大量的请求连接不上redis。因为这块儿链接redis的代码是我改的。。于是我又把原来请求mysql的代码还原了。感谢各位的阅读,以上就是“php高并发报语法错误如何解决”的内容了,经过本文的学习后,相信大家对php高并发报语法错误如何解决这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是百云主机,小编将为大家推送更多相关知识点的文章,欢迎关注!
本篇内容主要讲解“怎么用Java输出最长公共子串”,感兴趣免费云主机域名的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Java输出最长公共子串”吧!1.简述:描述给定两个字符串str1和str2,输出两个字符串的最长公…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。