2012-07-10 75 views
0

我想設計一個核心和多個模塊的核心應用程序。核心有責任接收來自網絡的消息,解析傳入的消息並將消息分發給已註冊的模塊。多模塊應用程序體系結構

消息有多種類型,有些模塊可能有興趣只接收一些類型。這些模塊可以並行執行,也可以按順序執行(例如,當模塊與定義良好的執行順序相互依賴時)。

另外,如果即使內核啓動,模塊也可以部署/取消部署,那將會很不錯。

這對我來說是全新的,我用來編寫模塊化應用程序,但是用多個部件靜態連線。

對於這樣的設計,我應該選擇哪個方向(即框架,模式...)?我不知道它是否與我的問題有關,但我確切地說我會使用Java。

感謝

回答

0
  • 您有在architecture level一個很不錯的辦法。但是,只有當您的應用程序layers/tire將處於不同的實例時纔會有所幫助,以便關閉一個module/server,而其他零件仍將繼續運行。要點是你會在不同的實例上運行模塊嗎?

  • 其次,我想建議你建立使用Web-Service要麼REST/SOAP應用核心架構,因爲它會自動實現你以爲如下Service Oriented Architecture (SOA)。這將是producer - consumer關係,您可以在單獨的實例上運行。在部署/取消部署時,您仍然可以運行服務部分以支持其他客戶端實例。

  • 使用Web服務還將爲您提供一個全球信息交換系統,可能與多個應用程序視圖/前端進行通信。

+0

我不認爲我可以在我的情況下使用Web服務,因爲傳入的消息將像SIP,DNS ...此外,核心應該提供高性能。我想過使用Netty。你是什​​麼意思分開的實例? – 2012-07-10 11:44:16