【发布时间】:2019-11-10 19:08:30
【问题描述】:
我们正在运行一个用于将 CSV 文件导入数据库的 Spring Batch Web 应用程序。此 Web 应用程序目前正在发展,并不断通过新工作扩展。
当前的更新过程如下所示: 1.编写新代码 2.构建war文件 3. 部署新建的war文件,替换Tomcat Webserver上的整个Web Application
当正在运行的系统正在向数据库导入/写入文件时,这可能会给我们带来麻烦。
我想知道是否有一种聪明的方法可以单独升级 spring 批处理作业?
我已经考虑过将项目拆分为许多不同的 Web 应用程序,但这可能会导致所有库都捆绑到 war 文件中。
是否有构建此类应用程序的最佳实践?
感谢您的帮助!
【问题讨论】:
-
我认为你应该使用事务来确保你的数据是一致的。
-
这可能会防止我们丢失任何数据,我们也可以在升级应用程序之前等待作业完成。我们已经在使用基于事务的作业,但我们正在寻找一种更好的方式来部署/升级作业或应用程序。
标签: java tomcat deployment spring-batch