跳至主要內容

Spring Boot启动卡主分析

xw小于 1 分钟JVM运维

现象

  • Docker环境部署Spring Boot应用,启动很慢,一直卡主,启动完成大概需要十多分钟,其他环境并未出现该问题

排查

使用jps命令查看进程PID,jps

使用jstck 20 命令查看线程执行情况。

重复执行几次,发现一直卡在这里,查看代码,发现会从域名服务器解析域名从而获取本机IP导致卡主。

public native InetAddress[] lookupAllHostAddr(String hostname) throws UnknownHostException;

猜测是这个过程导致线程卡主,直接在hosts文件添加映射,重启后问题得以解决。