服务已起动,但是访问不到问题排查

本文记录了一次服务器应用看似启动成功但实际无法访问的问题排查过程。从网络连接、端口开放、系统日志、资源监控到线程分析,最终通过jstack发现主线程存在业务逻辑死循环,导致服务未完全启动。这个案例提醒我们在系统维护中要注重深入细节,检查潜在的逻辑错误。
摘要由CSDN通过智能技术生成

这两天遇到了一个服务启动完毕,但是通过浏览器访问不到的情况。记录一下排查过程:

  1. ping服务器ip,确认网络问题,网络通畅√
  2. telnet ip port,确认端口开放,端口可以访问√
  3. 查看系统日志,看看是不是启动过程有报错导致服务启动失败,日志里没有明显的异常信息。
  4. 通过top命令查看一下当前服务器cpu、内存、loadaverage等的状态,同时再次确认是否存在java进程,cpu、内存、loadaverage都没有明显异常√
  5. 通过jps -v|grep 关键字定位pid,√
  6. top -p pid 然后按H,查看线程情况,确认是否存在cpu占用过高的线程,没有异常线程√
  7. 到此为止,没有发现任何异常信息
  8. 通过jstack pid查看一下当前服务的线程的dump
  9. 发现问题,是主线程启动过程中出现了一些业务逻辑的死循环,导致服务看起来貌似是启动完毕了,但是实际上并没有启动完毕。导致服务无法被访问
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值