2017-08-22 76 views
0

任何人都可以請解釋如何使用Java RMI實現從服務器到客戶端的消息廣播嗎?向使用RMI的客戶端發送廣播消息

我基本上想從服務器發送消息到所有客戶端。

+0

第一個問題 - 爲什麼使用RMI來實現這個?爲什麼不使用普通Java Socket多播?如果這是你想要實現的唯一目標,那麼你正在尋找一種複雜的,過時的技術(RMI)。 –

+0

這是給我們的任務,因此是一個問題。我知道這是一種過時的技術,但我需要了解它。 @Am_I_Helpful –

+0

@Am_I_Helpful這種「過時的技術」是這個星球上所有J2EE部署的核心。 – EJP

回答

0
  1. 客戶端需要導出用於回調的遠程對象。
  2. 每個客戶端需要向服務器註冊其回調。
  3. 服務器需要維護這些回調的集合。
  4. 服務器需要對調用每個回調的集合進行迭代。

這是一個不好的任務。很不恰當。

  • 如何做到這一點並不明顯。
  • 服務器沒有明確的時間從集合中刪除回調。客戶可以註銷其回調,但不能保證它在退出之前真的會這樣。
  • 在客戶端防火牆存在的情況下,它根本無法工作。
  • RMI是一種單播技術,而不是廣播技術。
  • RMI不太適合回調體系結構。
相關問題