我有spring boot的申请。我添加了很多依赖项(不幸的是,看起来我需要所有的依赖项),并且启动时间增加了很多。仅仅执行springapplication.run(source,args)
就需要10秒。
虽然与“习惯”相比,这可能不算多,但我不高兴它需要这么多,主要是因为它破坏了开发流程。应用程序本身在这一点上是相当小的,所以我假设大部分时间是与添加的依赖相关的,而不是应用程序类本身。
我假设问题是类路径扫描,但我不确定如何:
我假设在启动时增强spring使其具有并行bean初始化功能会加快速度,但该增强请求自2011年以来一直开放,没有任何进展。我在spring boot自己也看到了一些其他的努力,比如调查Tomcat JarScanning的速度改进,但是这是Tomcat特有的,已经被放弃了。
本文:
虽然针对集成测试,但建议使用lazy-init=true
,但是我不知道如何使用Java配置将其应用到spring boot的所有bean中-这里有任何指针吗?
欢迎任何(其他)建议。
spring boot做了很多可能不需要的自动配置。因此,您可能希望缩小范围,只需要自动配置,为您的应用程序。要查看包含的自动配置的完整列表,只需在调试模式下运行org.springframework.boot.autocigure
的日志记录(application.properties
中的logging.level.org.springframework.boot.autocigure=DEBUG
)。另一个选项是使用--debug
选项运行spring boot应用程序:Java-jar myproject-0.0.1-snapshot.jar--debug
输出中会有如下内容:
=========================
AUTO-CONFIGURATION REPORT
=========================
检查此列表并仅包含您需要的自动配置:
@Configuration
@Import({
DispatcherServletAutoConfiguration.class,
EmbeddedServletContainerAutoConfiguration.class,
ErrorMvcAutoConfiguration.class,
HttpEncodingAutoConfiguration.class,
HttpMessageConvertersAutoConfiguration.class,
JacksonAutoConfiguration.class,
ServerPropertiesAutoConfiguration.class,
PropertyPlaceholderAutoConfiguration.class,
ThymeleafAutoConfiguration.class,
WebMvcAutoConfiguration.class,
WebSocketAutoConfiguration.class,
})
public class SampleWebUiApplication {
已从此日志中复制代码。
现有一个springboot项目,通过扫描二维码查询信息,比如一棵树,扫描二维码后可以看到他相关的信息。但这个项目不止有树类型,还有道路,某个物品。所以将项目分模块开发,核心模块作为一个jar包,复制提供基础服务如数据导入导出。各类型构建成单独的jar。部署时需要那种类型就加载对应的jar。这样做是为了满足不同客户需求。 尝试: java -Xbootclasspath/a:file:./libs
Swoole的绝大部分功能只能用于cli命令行环境,请首先准备好Linux Shell环境。可使用vim、emacs、phpstorm或其他编辑器编写代码,并在命令行中通过下列指令执行程序。 php /path/to/your_file.php 成功执行Swoole服务器程序后,如果你的代码中没有任何echo语句,屏幕不会有任何输出,但实际上底层已经在监听网络端口,等待客户端发起连接。可使用相应的
我正在用Hubot框架开发一个应用程序,使用Heroku。我在Heroku上设置了一些配置变量,当我部署代码时,我的引用可以正常工作。
Dubbo 采用全 Spring 配置方式,透明化接入应用,对应用没有任何 API 侵入,只需用 Spring 加载 Dubbo 的配置即可,Dubbo 基于 Spring 的 Schema 扩展 进行加载。 如果不想使用 Spring 配置,可以通过 API 的方式 进行调用。 服务提供者 完整安装步骤,请参见:示例提供者安装 定义服务接口 DemoService.java 1: package
搜索了一些类似案例未解决,问题出在哪里? 1.> 错误提示: Failed to bind properties under 'mapper' to tk.mybatis.mapper.entity.Config: Action: Update your application's configuration pom.xml ,重点关注 “tk.mybatis” application.prope
我正在使用spring-cloud-sleuth为http请求、rabbitMQ消息和sheduled事件的日志添加相关id。添加依赖项后,应用程序的启动时间增加了50%。所有其他配置属性,如spring.sleuth.async.enabled和spring.sleuth.grpc.enabled的默认值为true。如果我想减少我的应用程序启动时间,我需要在我的应用程序属性文件中将所有这些都过期