应该安排哪个层安排任务?

时间:2010-10-12 08:35:35

标签: domain-driven-design scheduled-tasks architecture n-tier-architecture

我正在尝试使用分层架构实现DDD应用程序。我有:

  • 基础架构层 - 实现应用程序技术特定部分的层。
  • 域层 - 包含域模型的层。
  • 应用程序层 - 包含与域模型交互的干扰的层。
  • 接口层 - 从外部接收事件的层。

经典的3层(+基础架构)架构非常清晰。但我的申请不是很经典。在UI旁边我有计划的任务,应该定期运行。我考虑过将这些任务放到接口层,因为这些任务实际上处理了像UI这样的事件。但是有一个问题,我无法决定哪个层应该放置一个调度程序,它可以为计划任务触发事件。

我画了一幅草图

http://imgur.com/rY37b.png

我应该将调度程序对象放在哪一层?或者可能是使用内部事件生成器设计应用程序的另一种方式。

1 个答案:

答案 0 :(得分:1)

对我来说,scheduler是任务执行者的主机(就像你的JSP容器是你的UI的主机一样)。我会将其建模为外部实体,并将其作为另一个基础设施项目实施。