Spring Boot项目中指定依赖版本

端午节前将Spring Boot的版本升级到2.3.1.RELEASE之后,假期回来的第一天就推送上线,最近线上系统开始爆一些奇奇怪怪的错误,比如: paho3625270288893656: Timed out as no activity, keepAlive=60,000,000,000 lastOutboundActivity=4,391,824,700,168,296 lastInboundActivity=4,391,767,474,515,409 time=4,391,884,700,372,796 lastPing=4,391,824,700,242,264 或: Lost connection:…

Spring Boot应用优化与升级

前言 厂里有个21W行Java代码的项目,通过Gradle管理,子项目有104个,编译之后产生3个可启动的应用,初次编译时间要95秒,产生的关键应用的大小在90M左右。上传到生产服务器运行,启动完成需要137秒。整个过程比较漫长,一次Hotfix会耗掉Ops近10分钟时间。 上周三一同事回家试验升级Spring Boot 1.4.0和Gradle 3.0,说好像还不错,这个项目还在使用1.2.7版本,可以找时间的时候升级上去。 周四下午有了点时间,就着手开始动手做,三个目标,有优先级地开始进行: 加速应用的编译和启动速度 将Spring Boot升级到1.4.0版本 将Spring Boot相关依赖升级到合适的版本 加速应用的编译和启动速度 Spring Boot应用是一个fat jar,启动的时候会将fat jar中的jar(jar in jar)一个个扫描,将里面的jar扫描之后通过链接方式重新链入classpath中。应用越大,这个工作就越繁重,耗时越长。…