ICode9

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

SpringBoot 性能优化

2022-01-27 13:03:14  阅读:170  来源: 互联网

标签:CPUNMU SpringBoot 性能 ds2 static executor new 优化 public




1.Tomcat覆盖默认配置 server: tomcat: max-connections: 2000 accept-count: 100 threads: max: 800 min-spare: 100 max-http-header-size: 131072 2.优化线程池配置 @EnableAsync @Configuration public class AsyncConfig { public static final int CPUNMU = Runtime.getRuntime().availableProcessors(); @Bean(name = "taskExecutor") public TaskExecutor taskExecutor() { ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); executor.setCorePoolSize(CPUNMU); executor.setMaxPoolSize(CPUNMU * 25); executor.setQueueCapacity(5000); executor.setKeepAliveSeconds(60); executor.setThreadNamePrefix("Async-"); executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); executor.setWaitForTasksToCompleteOnShutdown(true); executor.setAwaitTerminationSeconds(60); return executor; } } 3.增加数据库连接池 @Primary @Bean(name = "dataSource") public DataSource dsDataSource(Environment environment) throws IOException { SQLServerDataSource ds = new SQLServerDataSource(); HikariDataSource ds2 = new HikariDataSource(); ds2.setDataSource(ds); ds2.setMaximumPoolSize(100); ds2.setConnectionTimeout(1800000); ds2.setPoolName("DataSource-"); ds2.setMinimumIdle(20); } catch (Exception e) { logger.error("Config error: {}", e.getMessage()); } return ds2; 4.增加缓存(SpringBoot Cache) // Constant info cache private static Map<String, String> constantCache = new ConcurrentHashMap<>(1024 * 5); // token cache private static Map<String, TokenCache> tokenCache = new ConcurrentHashMap<>(1024 * 5); 5.优化索引 5.增加Pod数量 6.增加Ingress数量 7.升级数据库的DTU 8.第三方API采用多线程调用 9.blob文件上传下载采用多线程 10.异步日志
    <Loggers>
        <AsyncLogger name="com.xx.Main" level="trace" additivity="false">
            <appender-ref ref="RollingFile"/>
        </AsyncLogger>
        <AsyncLogger name="RollingFile2" level="trace" additivity="false">
            <appender-ref ref="RollingFile2"/>
        </AsyncLogger>
        <Root level="debug">
            <AppenderRef ref="Console"/>
            <AppenderRef ref="RollingFile"/>
        </Root>
    </Loggers>

 

标签:CPUNMU,SpringBoot,性能,ds2,static,executor,new,优化,public
来源: https://www.cnblogs.com/blog-ice/p/15849447.html

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

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

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

ICode9版权所有