2012-04-27 68 views
2

我有一個關於如何配置我的系統與外部系統接口的問題。連接外部系統|如何設計系統

以下是各部分,我想放在一起的:

選項1

  • 我有3個,其帶來了3種不同類型的信息到系統的外部服務。
  • 我有一個WCF服務,它監聽所有這些外部服務,這些服務將消息轉換爲通用格式。
  • 我有一個使用雙工tcp綁定與WCF服務連接的WPF UI,並且消息在UI上得到更新。
  • 用戶界面還將任何傳出消息發送到服務,服務又將其發送到外部服務。

我的問題是,您認爲這是一種可擴展,可維護,經濟高效的方法來構建解決方案嗎?如果我在Intranet方案中部署這些問題,您是否看到可能遇到的任何特定問題?

的其他考慮我給了以下內容:

選項2

  • 具有連接到外部服務3個窗口服務。
  • 每種服務都會將消息轉換爲規範格式,並將其放在特定主題的消息總線上。
  • 有一個WCF服務,它監聽消息總線上的主題以獲取新消息。
  • 使用雙工綁定來更新帶有任何傳入消息的客戶端。
  • 客戶端將傳出消息發送到WCF服務,WCF服務又將其放到由Windows服務偵聽的特定主題上,這些主題將它們發送到外部系統。

我在這裏有點困惑,你能否幫我解決一個更好的方法,如果可以的話,請指點我討論這些場景的任何鏈接?

數據交換量是每5分鐘發送400條消息,分爲多個外部系統。

我相信很多人可能會遇到這種情況,所以如果你有更好的方法,請讓我知道。

感謝, -Mike

回答

1

我當然認爲與3種相似,但不同的消息格式打交道時,你的選擇2是正確的。這實現了兩種集成模式,adaptercanonical message

但是,我認爲使用相同的「適配器」服務作爲消息傳輸方向相反的導管將是一個錯誤。將響應通道抽象出請求處理流水線會更好。

您可以實現一個分發者(或router)模式來處理響應消息路由回請求源。