我一直在閱讀很多關於事件驅動架構的內容,這對我來說很有意義,但給用戶提供即時反饋的問題讓我感到困惑。在事件驅動架構中爲用戶提供即時響應
假設有一個服務('EmployeeService'),它包含所有員工的列表。創建員工的業務邏輯位於此服務中。
來自其他系統的UI使用此服務。要求是(無論你是否喜歡)它有一個員工網格,還有一個「添加員工按鈕」,它會提供一個表單,當你提交表單時,它將把你帶回到新員工的網絡中它。網格顯示由服務計算的派生字段(這點很重要!)。
傳統上,在提交時,我會顯示一個加載屏幕,同步發送一個WCF請求來註冊員工,以及何時完成並轉發到網格(現在肯定會有新員工)。
隨着EDA,在提交時,我會「開火併忘記」一個命令來註冊用戶 - 但那又如何?我可以轉發到電網,但有可能新員工不在那裏?我可以手動添加到網格中,假設所有都是正常的,但是如何顯示服務計算的派生數據?或者,也許我可以在網格上顯示「新員工待處理圖形」(如果尚未創建),然後讓頁面檢查每一個secons,直到它具有?
這是一種常見的情況,所以常見的解決方案是什麼?
計算結果如此複雜嗎?通常需要多長時間來計算數據? – 2012-08-10 05:07:42
@DanielMarbach它可能幾乎是瞬間的,但你無法保證它。 – 2012-08-10 07:50:49
如果你被固定到網格,那麼它可能不值得應用EDA原則。在這種情況下,RPC方法應該很好。 – 2012-08-10 12:40:55