跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • PHP 502 错误原因请教
未分類
29 3 月 2021

PHP 502 错误原因请教

PHP 502 错误原因请教

資深大佬 : sadfQED2 0

个人理解,当 php-fpm 的任务队列达到 listen.backlog 配置的上限的时候,这个时候新任务无法加入 php-fpm 的任务队列就会出现 502 错误。

因此我做了实验:将 php-fpm 设置为 static 模式(pm=static),进程数设置为 1 (pm.max_children=1),任务队列设置为 100 (listen.backlog=100),使用 3000 并发进行请求。

php 代码

 usleep(100000); // 暂停 100 毫秒  echo "success";  

预期:因为只有一个 fpm 进程,因此第一个请求被 fpm 接收后,后面 100 个请求将占满任务队列,因此应该成功 101 个请求,再后面所有的请求就都应该出现 502 错误。

实际:成功了 113 个请求,其他全部为 502 错误(实验了很多次,都是这个结果)。

猜想:nginx 在请求 php-fpm 的时候可能也有一个任务队列,这个队列会等待 php-fpm 的任务队列空闲,然后插入任务。

提问:nginx 在请求 php-fpm 前是否真的有一个缓冲队列?如果有,这个队列是否有相关配置项?如果没有,为什么我实验中会出现 113 个成功请求,而不是 101 个成功。

是否有大佬讲一讲,或者给个关键词也行,感谢

大佬有話說 (0)

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具