基准测试结果.DOC

基准测试结果

HYPERLINK \l benchmarks-for-spring-boot-start-up Spring Boot 启动基准 如果你不做其它事情,那么确保你在IDE中设置了 -XX:TieredStopAtLevel=1 和 -noverify 作为默认的JVM 。 在长期运行的生产过程中,它们可能不推荐,但是它们对启动时间有很大的影响。 获取快速磁盘( SSD ) 。 同样,不要饿死你的CPU ( 你需要 3或者 4 CPU 来利用 Spring Boot 中的一些并行化,8更好) 应用。 并使用 up-to-date JVM ( 实际上 8u131-zulu的速度比 8u141-openjdk 快) 。 spring 和 Spring Boot 不是慢速( 经过许多优化之后,其中一些是由数据驱动的) 。 组件扫描。自动配置。条件处理和它的他任何它的他操作都是启动时间的重要来源。 有一些证据表明,大部分成本与JVM开销。加载和解析类相关。 所以基本上,如果你想要更多的功能( 更多类) 你就会更慢。 请特别查看这里的数据 HYPERLINK /dsyer/spring-boot-startup-bench/tree/master/static ,了解更多细节。 便笺 如果你正在寻找关于内存消耗的更多信息,而不是启动时间,请参阅 HYPERLINK /dsyer/spring-boot-memory-blog /dsyer/spring-boot-memory-blog 。 这个项目使用JMH来测试和报告各种参数对 Spring Boot 启动时间的影响。 应用程序是在一个分叉的JVM中启动的,下面的测量包括启动的秒数在控制台上报告已经启动的时间。 测试各种组合: Spring Boot 版本,1.5.1,1.4.2和 1.3.8 一些JVM标志( 比如 。-noverify 有一个效果 -Xmx,而不是这么多) Fat jar vs 薄 jar 使用 JarLauncher 或者应用程序主服务器分解归档和运行 着色 vs Spring Boot fat jars 不同的应用程序特性:带有执行器的基本网络应用程序,petclinic和 spring 云配置服务器 硬件( 例如在裸机 vs AWS上运行) HYPERLINK F:\\linshitemp\\/dsyer/spring-boot-startup-bench/blob/master/static/README.adoc static 模块更详细地研究了bean计数的启动时间 便笺 有一个 HYPERLINK /spring-projects/spring-boot/issues/7493 Spring Boot 问题,带有一些注释和更多的基准结果。 如果你的启动时间慢并且需要一些公司,这可能对阅读有用。 非常重要:检查防病毒软件并确保它不会减慢对 jar 文件的访问速度。 后续的Spring Boot ( 等等) 问题: PropertySourcesPropertyResolver: HYPERLINK /spring-projects/spring-boot/issues/7571 spring引导 #7572 条件过程: HYPERLINK /spring-projects/spring-boot/issues/7573 弹簧引导 #7573 。 缓存配置: HYPERLINK /spring-projects/spring-boot/issues/7576 spring引导 #7576 延迟执行器: HYPERLINK /spring-projects/spring-boot/issues/7578 弹簧引导 #7578. 延迟验证: HYPERLINK /spring-projects/spring-boot/issues/7579 弹簧启动 7579 Jackson: HYPERLINK /spring-projects/spring-boot/issues/8028 弹簧启动 8028. 缓存注释过程: HYPERLINK /spring-projects/spring-boot/issues/8056 spring引导 8056 启动 JVM ARGS: HYPERLINK /spring-projects/spring-ide/issues/85 spring-ide #85 HYPERLINK \l running-locally 在本地运行 你需要使用java5和来构建所有代码,而这些代码完全是( 如果没有 Docker,你可以选择性地构建不依赖于的位) 。 要运行 JsaBenchmark,需要使用 Oracle

文档评论(0)

1亿VIP精品文档

相关文档