【发布时间】:2011-04-30 09:13:11
【问题描述】:
我目前正在设计一个 Web 应用程序,它允许用户安排将针对 HTTP API(代表他们)执行的任务。这些任务可以重复出现,并且可用于调度的最小时间分辨率将是一分钟。由于任务的性质,我认为异步执行它们是有意义的。但是,这部分的架构应该是怎样的呢?
我考虑过使用任务队列来通过 Web 应用程序创建任务并让它们由工作人员执行。在这种情况下,我有几个问题:
- 如何处理重复性任务?
- 如何轻松保存任务结果?
- 是否可以轻松地使队列“持久化”?
- 工作人员是否应直接与数据库交互?
- 我应该手动将重复任务排队吗?
我还能考虑什么?由于我认为我不是唯一一个考虑这种 Web 应用程序架构的人,是否有任何“最佳实践”?任务队列是要走的路吗?
【问题讨论】:
-
这是relevant。它展示了如何在
node.js中实现未来的任务。只需通过发送 HTTP 请求来更改作业的运行。
标签: web-applications architecture asynchronous task-queue