1.状态码解释

502 Bad Gateway:作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。

504 Gateway Time-out:作为网关或者代理工作的服务器尝试执行请求时,未能及时从上游服务器(URI标识出的服务器,例如HTTP、FTP、LDAP)或者辅助服务器(例如DNS)收到响应。

2.502原因分析

将请求提交给网关如php-fpm执行,但是由于某些原因没有执行完毕导致php-fpm进程终止执行。说到此,这个问题就很明了了,与网关服务如php-fpm的配置有关了。

php-fpm.conf配置文件中有两个参数就需要你考虑到,分别是max_children和request_terminate_timeout。

max_children最大子进程数,在高并发请求下,达到php-fpm最大响应数,后续的请求就会出现502错误的。可以通过netstat命令来查看当前连接数。

request_terminate_timeout设置单个请求的超时终止时间。还应该注意到php.ini中的max_execution_time参数。当请求终止时,也会出现502错误的。

当积累了大量的php请求,你重启php-fpm释放资源,但一两分钟不到,502又再次呈现,这是什么原因导致的呢? 这时还应该考虑到数据库,查看下数据库进程是否有大量的locked进程,数据库死锁导致超时,前端终止了继续请求,但是SQL语句还在等待释放锁,这时就要重启数据库服务了或kill掉死锁SQL进程了。

对于长时间的请求可以考虑使用异步方式,可以参阅《关于PHP实现异步操作的研究》。

3.504原因分析

504错误一般是与nginx.conf配置有关了。主要与以下几个参数有关:fastcgi_connect_timeout、fastcgi_send_timeout、fastcgi_read_timeout、fastcgi_buffer_size、fastcgi_buffers、fastcgi_busy_buffers_size、fastcgi_temp_file_write_size、fastcgi_intercept_errors。特别是前三个超时时间。如果fastcgi缓冲区太小会导致fastcgi进程被挂起从而演变为504错误。

4. 小结

总而言之,502错误主要从四个方向入手:

1. max_children

2. request_terminate_timeout、max_execution_time

3. 数据库

4. 网关服务是否启动如php-fpm

504错误主要查看nginx.conf关于网关如fastcgi的配置。

出处:http://www.ttlsa.com/html/3112.html

链接mysql 504_常见错误类型502与504相关推荐

  1. MySQL数据库常见错误及解决方案

    MySQL数据库常见错误及解决方案 1 MySQL无法重启问题解决Warning: World-writable config file '/etc/my.cnf' is ignored 原因 今天帮 ...

  2. OJ、ACM提交常见错误类型

    OJ.ACM提交常见错误类型 一.Presentation Error(输出格式错误) 主要换行或者空格使用错误造成的 , 出现Presentation Error说明思路没问题,很多时候就是和后台样 ...

  3. ubuntu 安装nginx,php,mysql。常见错误解决

    2019独角兽企业重金招聘Python工程师标准>>> sudo apt-get install -y libpcre3 libpcre3-dev zlib1g-dev ./conf ...

  4. 排除MySQL中常见错误的实用招术

    MySQL是Oracle拥有的一种广泛使用的开源关系数据库管理系统(RDMS).多年来,它是基于Web的应用软件的默认选择,与其他数据库引擎相比仍然大受欢迎. MySQL是为Web应用软件设计和优化的 ...

  5. sql语句创建mysql数据库常见错误以及解决方法

    Error Code: 1366. Incorrect string value: '\xE5\xAD\xA6\xE5\xB7\xA5...'     将该表中的每一列的字符集都改为utf-8    ...

  6. MySQL:常见错误01

    ylbtech-MySQL:常见错误01 1.返回顶部 1. [SQL]select * from product_product_tag a LEFT JOIN system_tag b on b. ...

  7. 软件本地化常见错误类型

    软件本地化测试--崔启亮博士 来源:本地化测试网   作者:崔启亮 概述 软件本地化测试的测试对象是本地化的软件,需要在本地化的操作系统上进行.虽然本地化的软件是基于源程序软件创建的,但二者的测试内容 ...

  8. MySQL数据库常见错误与解决方法总结

    一.Can't connect to MySQL server on 'localhost' (10061) 翻译:不能连接到 localhost 上的mysql 分析:这说明"localh ...

  9. mysql数据库常见错误及解决方法

    1.MySQL无法重启问题解决Warning: World-writable config file '/etc/my.cnf' is ignored 原因: 今天维护服务器,在关闭数据库的命令发现m ...

  10. mysql 3009_MySQL 常见错误 ERROR 3009

    (点击上方公众号,可快速关注) 来源:潇湘隐者 , www.cnblogs.com/kerrycode/p/9198225.html 在测试备份还原时,使用XtraBackup还原数据库后,创建一个测 ...

最新文章

  1. VS2010/MFC编程入门之十七(对话框:文件对话框)
  2. python获取列表list里面元素的下标
  3. LeetCode-7.整数反转(越界问题)
  4. 统计一个子字符串在另一个字符串中出现的次数
  5. fatfs 文件属性_FATFS文件系统剖析(全).
  6. NMEA-0183 协议简介
  7. 锂电池电芯-市场现状及未来发展趋势
  8. 关于安控RTU和宏电DTU的通讯设置
  9. 日期格式化在高并发场景下的解决方案
  10. 基因重组- 冲刺计划
  11. 清华大学计算机通识选修,清华大学外语通识选修课调查分析-20210720010045.docx-原创力文档...
  12. webstorm激活码
  13. PHP全栈学习笔记7
  14. 利用CSS改变图片颜色的100种方法!
  15. 海尔微型计算机云悦t3G276ia,没了海尔云悦miniA 迷你主机界尽失半壁江山
  16. 小话设计模式(番外二)委托模式
  17. 测绘——如何在win10环境下安装CAD2006+CASS7.0
  18. npj | 王德华/张学英等揭示荒漠啮齿动物通过“菌群-肠-肾”轴耐受高盐的机制...
  19. 【Python】Python创建虚拟环境的三种方式
  20. iphone自带计算机删除,如何清理iPhone上的垃圾文件

热门文章

  1. NIOS II——PIO寄存器分析及使用
  2. 2021年N1叉车司机新版试题及N1叉车司机考试试卷
  3. 为什么说人间值得,因为有这么多美好让我们留恋。金秋十月初九于指南山村 。...
  4. cer证书生成以及签名验签详细篇(keytool 命令)
  5. 目标检测中的常见指标
  6. 全国青少年软件编程等级考试scratch一级考试大纲+考点
  7. 服务器存档修改器,太吾绘卷存档修改器v2.6
  8. 移动端webscoket连接失败---code1006
  9. 量子十问之四:“薛定谔猫”为什么会自然死亡?
  10. cocos小小打飞机游戏项目源码资源共享学习