需要建议创建一个新的预定流程

问题描述 投票:0回答:1

我需要关于在spring boot应用程序中创建一个计划任务的建议。我们的应用程序是一个订单管理门户,帮助用户了解订单或订单列表的详细信息。

目前,有一个手动的过程,如下所示:当一个新的订单进入数据库时,用户收集订单的一些信息,准备一个doc文件,并通过电子邮件将其发送到一个外部门户。该门户在邮件中给用户发送一个响应,用户通过我们的应用将响应保存在系统中。现在,我们想把这个过程自动化,不走电子邮件的路线,我们将做一个SOAP调用到外部门户(在XML请求中以附件形式发送文档),并得到响应。为此,我想写一个预定流程(@Scheduled),它将接收新的订单并为它们进行SOAP调用。

我的问题是,我应该在同一个应用程序中创建预定流程,还是为它创建一个新的模块(一个spring boot应用程序)。我很感谢您的建议。

java spring-boot rest soap scheduled-tasks
1个回答
0
投票

春天启动调度是非常方便的,如果可以的话,请使用它。然而,如果你有多个spring应用程序的实例,调度将在所有的实例上启用,使得很难同步谁调用什么。

如果你运行了多个实例,并且假设你在它们前面有某种负载均衡器,那么可以创建一个单独的cron作业,它将调用一些端点,你的负载均衡器将把请求路由到一个特定的实例。

然而在多实例的情况下,最简单的方法可能是使用某种消息传递,比如队列。然后,所有的应用程序都可以订阅一个主题,你的cron可以直接推送通知给它。

© www.soinside.com 2019 - 2024. All rights reserved.