弹簧&x2B;RabbitMQ:跟踪大任务的进度

弹簧&x2B;RabbitMQ:跟踪大任务的进度,rabbitmq,job-scheduling,spring-amqp,Rabbitmq,Job Scheduling,Spring Amqp,我正在使用SpringMVC3.2和RabbitMQ为web应用程序异步处理数据。通过使用消息队列,可以在后台轻松执行任务 然而,我开始想知道什么是跟踪一项大工作的进展以及解决这一问题的总体方法的最佳方式 没有RabbitMQ,创建一个新线程并与之通信可能非常容易,但RabbitMQ增加了额外的复杂性 任何关于最佳架构的建议都将不胜感激 工作可能类似于“下载10000件产品的照片并刷新缓存”。我希望能够实时向用户显示进度的百分比。使用一些键值存储,并使用进度更新与任务相关的键。快速、肮脏,但在大

我正在使用SpringMVC3.2和RabbitMQ为web应用程序异步处理数据。通过使用消息队列,可以在后台轻松执行任务

然而,我开始想知道什么是跟踪一项大工作的进展以及解决这一问题的总体方法的最佳方式

没有RabbitMQ,创建一个新线程并与之通信可能非常容易,但RabbitMQ增加了额外的复杂性

任何关于最佳架构的建议都将不胜感激


工作可能类似于“下载10000件产品的照片并刷新缓存”。我希望能够实时向用户显示进度的百分比。

使用一些键值存储,并使用进度更新与任务相关的键。快速、肮脏,但在大多数情况下都有效,而且易于实施。

我不太清楚问题所在。一个问题:执行长作业的模块在web服务器中,还是另一个模块?您可以在消费者收到消息后创建一个线程,然后使用web socket发送进度。我认为我最好看看Spring Batch以获得更好的解决方案,不要将Rabbit MQ用于此类用途。是的,这可能是一个更好的解决方案。