我正在處理一個用戶故事,通過該用戶故事爲用戶創建一個任務(實體),以便在日期過期並滿足其他條件時(在單獨的實體 - 讓我們說一個產品)。DDD中基於時間/日期的域事件的模式
理想情況下,當這個「日期」過期時,我希望實時創建域事件 - 但是在代碼中沒有任何觸發器可以使用。我目前只能看到一種類型的模式,即每個小時都有一個正在輪詢的windows服務(例如使用Topshelf/Quartz),使用Product存儲庫取回所有記錄,然後編碼以檢查是否或者不是日期過期並且符合標準。如果成功,域事件將被觸發並且任務將被創建。
正如你所想象的,我並不特別喜歡這個。這不是實時的,而且我拉回了大量數據以實現相對簡單的事情。我在這裏錯過了一招嗎?某種狀態機/工作流?在這種情況下,我可以利用哪些建築模式/好設計?
道歉,如果問題有點模糊,我會嘗試澄清是否需要。
感謝您的回覆 - 是的,這是一個很好的觀點,我可以探索這個領域;快速閱讀表明Quartz可以在其調度程序中管理數十萬個作業,並且通常可以很好地擴展。然而,我決定在我的情況下(現在),我將着眼於未來 - 對生成的任務進行約會,以便它們在到期時才能看到。如果所有額外的數據變得笨拙,那麼我會研究你的Quartz建議!謝謝! –