2012-06-18 68 views
1

我做客戶端 - 服務器應用程序,我們選擇了Netty作爲連接管理框架。我們使用SSL TCP連接。到目前爲止,客戶端也正在使用Java。但將來該項目應該支持移動設備:Android和iOS。 的問題是:是多麼痛苦實現C++或Objective C的客戶端連接到Java服務器上的Netty?服務器側的Netty和客戶端上C++或目標C

+1

客戶端服務器的選擇不應該的問題。一旦你有一個TCP + SSL客戶端或服務器時,它不應該的問題都寫在了什麼。 –

+0

您可以使用Web服務來實現這一目標。我不會說這很容易,但如果這很容易,我們都會失去工作!一旦你啓動並運行各種涉及的技術,這並不算太壞。 – davidfrancis

回答

0

這真的取決於你使用的是什麼協議。如果你定義你在哪裏發送序列化的Java對象爲二進制像this在非JVM的語言,那麼你將麻煩寫一個客戶端的協議。如果您使用基於文本的協議(請參閱here)或基於HTTP的Web服務,那麼它將很容易。

+0

主要問題不是要發送的數據格式。我們將使用JSON或類似的。問題在於管理客戶端的套接字連接:Netty庫在客戶端自動控制連接超時並進行重新連接等等。正如我所看到的,我們必須在C++上手動實現所有這些... – Exterminator13

2

你可以使用CocoaAsyncSocket,我已經使用它作爲客戶端與服務器在Netty中使用協議實現我已經定義,將發送和接收數據爲JSON,它和Netty一樣好。