慢回退启动时间

时间:2016-06-22 15:09:07

标签: java logback

在一个非常简单的Java应用程序中,使用默认值(logback.xml中没有src/main/resources)进行回写,应用程序在大约400ms内启动。只要我们向类路径(logback.xml)添加基本src/main/resources,启动时间就会增加到5500毫秒左右。我们在多个项目中看到了这一点。配置如下:

<configuration>

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%date{HH:mm:ss.SSS} %-7level - %-50logger{36} - %message%n</pattern>
        </encoder>
    </appender>

    <logger name="com.zaxxer.hikari" level="ERROR">
        <appender-ref ref="STDOUT"/>
    </logger>

    <logger name="org.sql2o" level="ERROR">
        <appender-ref ref="STDOUT"/>
    </logger>

    <root level="INFO">
        <appender-ref ref="STDOUT"/>
    </root>

</configuration>

2 个答案:

答案 0 :(得分:10)

5秒看起来像是dns查询超时。对我来说就是这样。请确保您的计算机的主机名解析为IP。您可以测试执行ping操作:

ping `hostname`

如果它解析了名称并开始ping,那么你的问题就是其他问题。但是如果你看到一条消息说'#34;地址错误&#34;,这可以解释你的问题。

要简单地修复它,您只需将主机名添加到/etc/hosts文件即可。只需在127.0.0.1开头的行尾添加主机名即可。 更改应立即生效。它可能不是解决这个问题最干净的方法,尤其是在使用dhcp等的现代linux上。但如果它有效,你就会有一个很好的指针,指出如何永久解决这个名称解析问题。

答案 1 :(得分:6)

对我来说,问题是ipv6解决方案。 Damien在上面的回答是现场,只需要在etc / hosts上添加一个ipv6条目。 类似的东西:

::1        ${your.host.name}