测试环境 membership 模块超时60s 问题定位步骤如下:

step1: 前端 debug 时查看到了504的响应-----(发现问题)

问题分析

nginx访问出现504 Gateway Time-out,一般是由于程序执行时间过长导致响应超时,例如程序需要执行60秒,而nginx最大响应等待时间为30秒,这样就会出现超时。

step2:查看nginx log

==> access.log <==

10.7.0.13 - - [15/May/2020:16:42:19 +0800] 10.7.00.13:9301 60.001 60.001 ars-beta.test_webcn-la.com POST /api/gc/membership/tier/getMembershipTierByTest

HTTP/1.1 "504" 705 "-" "-" "Apache-HttpClient/4.5.3 (Java/1.8.0_144)"

可以看到nginx也是504的状态,于是可以查看后端对应的服务是10.7.00.13:9301

可以使用curl 来验证一下服务是否正常:curl -I http://localhost:9301/test.html

step3:查看9301端口状态:

wc -l 查看后大概有117个左右的连接,平时只有以下这样的情况

step4:结合业务查看membership.controller 的access.log(本日志记录了所有与本服务交互的请求处理), 查看调用请求的整个过程,有两个惊人发现:第一个是红框里面的ip, 第二个是红框里面的当前请求线程名称

step5:第一个红框的的ip 居然是我自己的ip, 这下子问题定位了,因为我本地有在请求membership 服务,并且是python开发的监控服务是否正常的应用所发出的请求。

step6:结论为:因为我本机在每五分钟(从上面的请求日志间隔可以窥探到)请求一次membership 服务的接口,用于保障beta环境的可用性验证,最终因为请求的membership 服务连接一直不能释放导致了membership 服务僵死掉。

查看9301端口状态时,存在这两个状态,说明如下:

step7:解决方案:重新重启了服务就恢复了,不过还发现了mq 地址变更但代码配置里面未变更的问题并让开发修复,算是意外的收获。

如果你觉得文章不错的话,分享、收藏,在看,关注、打赏将会是对我的最大支持,也是我持续更新的最大动力

更多精彩内容请关注我们

java 504错误怎么解决_前端报504错误如何定位相关推荐

  1. java 504错误怎么解决_求助java.lang.NoClassDefFoundError怎么解决,报错信息如下

    求助java.lang.NoClassDefFoundError怎么解决,报错信息如下 四月 14, 2018 11:03:07 上午 org.apache.catalina.startup.Embe ...

  2. java hash=0报空指针_怎么报空指针异常错误?

    源自:2-2 开发第一个自定义标签 怎么报空指针异常错误? java.lang.NullPointerException at org.apache.tomcat.util.descriptor.tl ...

  3. linux部署的java应用,浏览器访问时,报域名解析错误

    工作中,经常需要在Linux环境中部署Tomcat,配置java应用.在浏览器中访问应用时,却报域名解析错误,该怎么样解决呢? 解决方法:关闭防火墙 iptables -L -n     查看已添加的 ...

  4. java argument type mismatch_解决mybatisplus插入报错argument type mismatch的问题

    今天使用argument type mismatch发现插入的时候报错 java.lang.IllegalArgumentException: argument type mismatch 从错误中看 ...

  5. 数据库MySQL错误2058_SQLyog连接MySQL8.0报2058错误的完美解决方法

    引言 用SQLyog连接MySQL8.0(社区版:mysql-installer-community-8.0.15.0.msi),出现错误2058(Plugin caching_sha2_passwo ...

  6. java fatal exception_如何解决FATAL EXCEPTION:pool-4-thread-1错误?

    我有一个工作得很好的应用程序,但有时候我在程序中添加了一些类和代码,导致我的应用程序崩溃.在我logcat错误是这样的:如何解决FATAL EXCEPTION:pool-4-thread-1错误? F ...

  7. c0000005错误怎么解决_宽带错误651怎么解决,办法

    大家在使用宽带上网的时候偶尔会遇到宽带连接错误651的情况,每一个宽带错误代码都有对应的错误含义,宽带连接错误651为调制解调器(modem)发出的错误报告,一般情况下是未找到指定的端口.以下介绍以下 ...

  8. 400错误请求怎么解决_什么是400错误请求错误(以及如何解决)?

    400错误请求怎么解决 A 400 Bad Request Error occurs when a request sent to the website server is incorrect or ...

  9. Linux系统出现Vsftp 553 Could Not Create File错误的解决_老杨风子_新浪博客

    Linux系统出现Vsftp 553 Could Not Create File错误的解决 使用LINUX系统的小伙伴们在使用vsftp的时候,发现出现553 Could not create fil ...

  10. 502网关错误解决_什么是502错误网关错误(以及如何解决)?

    502网关错误解决 A 502 Bad Gateway Error occurs when you try to visit a web page, but one web server gets a ...

最新文章

  1. Python使用matplotlib函数subplot可视化多个不同颜色的折线图、为多个子图添加总标题(main title)、自定义设置主标题字体类型、字体大小、字体颜色等
  2. 「luogu3704」[SDOI2017]数字表格
  3. 虚拟服务器的磁盘,虚拟服务器磁盘扩容
  4. python 日志函数参数_将日志信息作为参数传递给函数
  5. 企业是否应该实现对客户需求的快速响应_如何做好企业服务?
  6. warning: format not a string literal and no format arguments
  7. 纯java生成验证码 java生成图片并保存
  8. 数据库实验8 数据库安全性(用户与权限管理)实验
  9. 官方 Material Design App
  10. 方方格子access_安装了这两款Office插件,我确信你的办公效率会大大提高!
  11. 编程常用小技巧(持续更新~)
  12. 看完后就知道如何提高网站的打开速度,受益非浅!
  13. 微信开发中两种access_token的区别
  14. 网络socket编程--多路复用
  15. 【最全面教程】搞定配置MySQL的各种幺蛾子!!
  16. hao123是HTML还是PHP,PHP网址目录大全网址导航源码 支持默认/hao123/2345/114la四种风格...
  17. python新浪微博数据分析_Python 爬取新浪微博数据分析90后单身原因
  18. 欧尼酱讲JVM(15)——堆空间的参数设置
  19. Ubuntu GIT丢弃更改
  20. linux上监控cpu温度,Linux怎样监控CPU温度?

热门文章

  1. office365打开服务器文件出错,Microsoft Office 365个人版打开显示错误
  2. R语言与机器学习学习笔记(分类算法)(1)K-近邻算法
  3. python dos攻击_Python DOS预防十亿笑声攻击
  4. Tallest buildings/skyscrapers in the world
  5. 软件设计师之朴素的模式匹配算法
  6. python 转盘 圆形,用python实现一个转盘
  7. 梦殇 chapter six
  8. python计算手机销量年增长率_「净资产增长率」Python量化数据获取:总资产同比增长率与净资产同比增长率 - seo实验室...
  9. 关于CSDN原力计划活动说明
  10. 角度传感器测量实验 GY-25