ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

springboot jar 包运行速度比在eclipse中慢15倍问题发现解决

2019-04-03 09:53:50  阅读:469  来源: 互联网

标签:15 springboot 中慢 jar .% 堆栈 速度 日志 logger


       用springboot 写了一个接口项目,基于activeMq接受发送的http协议的接口项目,在开发工具eclipse中测试的时候,压测速度每秒1w条左右,将项目放到打包成jar 包放到Linux生产机上后速度大幅下降,只有100条/s,很是奇怪,虽然测试时候没有进行网络传输,但是速度不应该这么慢。于是在eclipse所在的机器上运行打包好的jar,执行jar -Xms1g -Xmx1g -jar ***.jar ,发现速度同样会下降严重,只有600/s,于是考虑是否是初始堆栈,最高堆栈空间是否配置小了,于是配成4g 发现速度也没有明显提升,最后干脆不配置堆栈,发现速度还是没有提升多少。于是可以排除是堆栈配置的问题。

    想到可能跟日志有关,使用的日志是logback,springboot 推荐日志 日志配置如下:

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>

<!--     <appender name="consoleApp" class="ch.qos.logback.core.ConsoleAppender">
        <layout class="ch.qos.logback.classic.PatternLayout">
            <pattern>
                %date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L- %msg%n
            </pattern>
        </layout>
    </appender> -->

    <appender name="fileInfoApp"
        class="ch.qos.logback.core.rolling.RollingFileAppender">
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>ERROR</level>
            <onMatch>DENY</onMatch>
            <onMismatch>ACCEPT</onMismatch>
        </filter>
        <encoder>
            <pattern>
                %date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg%n
            </pattern>
        </encoder>
        <!-- 滚动策略 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 路径 -->
            <fileNamePattern>logs/http-gateway.info.%d.log</fileNamePattern>
        </rollingPolicy>
    </appender>

    <appender name="fileErrorApp"
        class="ch.qos.logback.core.rolling.RollingFileAppender">
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>ERROR</level>
        </filter>
        <encoder>
            <pattern>
                %date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg%n
            </pattern>
        </encoder>

        <!-- 设置滚动策略 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 路径 -->
            <fileNamePattern>logs/http-gateway.err.%d.log</fileNamePattern>

            <!-- 控制保留的归档文件的最大数量,超出数量就删除旧文件,假设设置每个月滚动, 且<maxHistory> 是1,则只保存最近1个月的文件,删除之前的旧文件 -->
            <MaxHistory>3</MaxHistory>

        </rollingPolicy>
    </appender>
    <root level="INFO">
        <!-- <appender-ref ref="consoleApp" /> -->
        <appender-ref ref="fileInfoApp" />
        <appender-ref ref="fileErrorApp" />
    </root>
</configuration>

感觉可能跟控制台输出有关系 于是注释掉了控制台输出,然后重新打包 ,发现速度就恢复了。

 

 

标签:15,springboot,中慢,jar,.%,堆栈,速度,日志,logger
来源: https://blog.csdn.net/t_zhangtt/article/details/88987748

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有