今天引入一些动态代理后,启动程序时间长达120s,找了下原因,详情可以看一下。简单来说就是,应用启动时有些框架或者日志组件,尤其是spring boot,会直接或间接地多次调用:java.net.InetAddress.getLocalHost()这个调用在操作系统中可能会耗时很久。

解决办法有两种:

1. 就是把本机的hostname 添加到 /etc/hosts 中,例如: 127.0.0.1 localhost myMac

2. 执行  scutil --set HostName "localhost"