最近我的网站在执行耗时操作的时候,老是出现502错误,请问这个问题怎么优化解决?
网友回复
首先要明确502的错误是怎么出现的,我们先看看nginx+php-fpm的请求流程图,如下:
如上图所示,nginx将浏览器的请求转发给后端的php-fpm进程进行处理,后端的php-fpm进程数量和请求处理次数可以在php-fpm.conf中max_children或者max_requests 进行设置。
那么如果php-fpm进程执行php代码的时间过长,那么nginx将新的请求发给php-fpm的时候,由于后端的php-fpm都在忙,就会造成没人处理改请求,nginx就会抛出502错误,还有一种情况就是nginx在浏览器第一次请求的时候,会指定将该浏览器的请求指定给后端的一个php-fpm进程,如果该进程执行php代码时间过长,也会导致无法处理新请求而抛出502错误。
好了,知道原因后那怎么解决这个问题呢?
1、增加php-fpm进程数量
一般情况下php-...
点击查看剩余70%