关于linux环境运行jar -jar命令,程序卡顿的问题

当Linux环境中jar包运行出现卡顿,排查后发现并非资源不足或程序损坏,而是由于/etc/resolv.conf文件中的DNS配置导致。程序在启动时尝试解析域名,由于迁移后域名访问不通,造成日志输出缓慢。解决方案是注释掉resolv.conf中的nameserver,确保程序正常启动。
摘要由CSDN通过智能技术生成

关于linux环境运行jar包卡顿的问题

起因

运维兄弟发现几台虚机宿主机计算能力太差,进行了数据迁移。导致部署在这批主机上的组件和程序全部停掉了。

发现问题

由于程序没有自动化部署,作为苦逼的我只能上到主机上重新部署程序。发现运行jar -jar 命令发现命令行没有日志打印输出。

排查思路

  • 排查涉及组件是否启动失败,导致程序连接超时无打印。检查后发现不是这个原因
  • 怀疑是迁移过程中,jar损坏,于是重新打包一个新的jar包,运行还是一样
  • 怀疑是不是资源不够: 检查内存,存储等资源。
df -h  #查看磁盘存储情况
free -m #看出内存情况
top # 查看主机的资源情况,相当于Windows下的资源管理器

排除以上问题之后,发现依然如此。于是我开始百度看看有没有与我相似情况的问题参考。可想而知没有提供到任何思路。

无计可施了:问问同事老哥看看

找到问题原因

同事老哥简单了解问题情况后,就打开了 /etc/resolv.conf 文件。将所有的nameserver注释掉。后运行jar包,确实可以正常启动。原来他们之前项目组也遇到过这个问题。所以第一时间就想到排查这个文件。 这个文件是DNS配置文件。程序运行时会去跑这些域名解析。然后因为虚拟机迁移,导致域名访问不通,程序就一个个跑这些域名解析,导致程序运行和日志输出极慢。

关于 /etc/resolv.conf 文件

/etc/resolv.conf是DNS客户机的配置文件,用于设置DNS服务器的IP地址及DNS域名,还包含了主机的域名搜索顺序。该文件是由域名解析器(resolver,一个根据主机名解析IP地址的库)使用的配置文件

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值