在設計客戶端 - 服務器系統(JAVA)時,我必須設計協議。我知道在現實世界中我可以使用HTTP e.t.c,這就像重新發明輪子。但是,我可以設計基於無狀態協議或面向狀態的協議(如POP3)的協議,但我不知道消息應該是什麼樣子。客戶 - 服務器系統 - 設計協議
我從來沒有做過/見過協議設計,並想知道如果任何人有一個協議的設計,我可以看到或任何通知的例子嗎?
謝謝
在設計客戶端 - 服務器系統(JAVA)時,我必須設計協議。我知道在現實世界中我可以使用HTTP e.t.c,這就像重新發明輪子。但是,我可以設計基於無狀態協議或面向狀態的協議(如POP3)的協議,但我不知道消息應該是什麼樣子。客戶 - 服務器系統 - 設計協議
我從來沒有做過/見過協議設計,並想知道如果任何人有一個協議的設計,我可以看到或任何通知的例子嗎?
謝謝
你也許可以重新發明輪子,爲什麼不能用常規的網絡應用程序去?你的需求看起來類似於webapps。設計你自己的協議不是太難,但是正確的做法是。如果設計得不合適,它可能會讓你的消息類型,確認,重新連接邏輯臃腫,甚至沒有。
你想通過HTTP基於文本?然後你可以使用'消息類型' - '消息有效載荷'來完成幾乎所有的事情。
如果它的二進制你在看,然後「包長度」 - 「操作碼+郵件頭字節,如果需要」 - 「郵件正文」 - 「校驗」通常會得到你想要的東西。
因此,對於你的要求,「LOG_IN」將成爲當客戶端試圖登錄的消息操作碼/類型,用戶名和密碼會被人體或消息的有效載荷等。
對於人類可讀的消息格式看看AMQP標準,你可能會得到一些指點那裏。
聽起來像你想重新發明http?
我有 - 我通常使用HTTP。 – duffymo 2013-03-02 14:29:43