我是Quartz的新手,我将编写需要大量服务/依赖项的作业。
在作业执行方法中创建Spring上下文是否有意义(因此对于任何新作业都会有新的Spring上下文),或者在创建作业之前创建一个独特的Spark上下文并为任何作业注入服务更好新工作?
谢谢。
答案 0 :(得分:1)
这取决于您的要求和偏好。
如果你的工作只在一天确定的时间开始,那就像每天凌晨3点。那么你的春季环境开始几分钟并不重要。在这种情况下,或者在上下文运行之前的时间并不重要的任何其他情况下,我建议您在每次启动作业时启动上下文。如果你只使用它的一小部分就没有任何意义来保持上下文并在洞中运行。
但是,你可以有很多工作。而且他们开始运行的时间可能无关紧要。但如果它们很多,它将使用大量内存为每项工作开始新的上下文。所以,在这种情况下,我建议你初始化一个独特的春天语境。因此,您可以优化服务器的内存。
其他情况,是启动时间很重要。在这种情况下,最好让弹簧上下文运行起来,这样你就可以在每次需要的时候使用它。