1

私は現在、クライアント サーバー アーキテクチャを持つアプリケーションを作成しています。

クライアントは Java android アプリケーションです サーバーは C# アプリケーションです。

クライアントはサーバーからデータをプルしますが、一部のデータを C# サーバーにもプッシュする場合があります。

サーバーがクライアントに転送する必要があるデータは、データ構造のリスト (おそらく XML の形式でしょうか?) であり、場合によってはファイルのようなバイナリ データです。

クライアントとサーバーは、ワイヤレス ネットワークを介して通信しています。

速度とスケーラビリティは、システムの設計における私の最優先事項です...

サーバーとクライアントを自分で作成する必要があります。通信にはソケットを使用します。

Java クライアントと C# サーバーの間でデータを交換するために使用するプロトコルの形式についてアドバイスが必要です。

Java と C# で同様のデータ構造 (冗長に見える) を作成し、それらをシリアル化する必要がありますか??

またはxmlを交換する必要がありますか??

それを行うための最良の方法はまだわかりません..基本的に、クライアントからのコマンドがあり、サーバーはデータで応答します

このトピックについて教えてください。通信されるデータは、wifi 経由で数ギガにもなる可能性があるため、速度が非常に重要です。

4

4 に答える 4

0

TechEd 2011 の次のセッションをご覧ください。「My Customers Are Using iPhone/Android,But I'm a Microsoft Guy. Now What?」

http://channel9.msdn.com/Events/TechEd/NorthAmerica/2011/DPR304

于 2012-04-03T20:13:26.720 に答える
0

これには適切かもしれないと思いWCFます.soapをWCF使用するので、Java実装がうまく機能するはずです. WCFJava がストリーミング プロトコルをサポートしているかどうかはわかりませんが、ストリーミングもサポートしているため、大きなファイルの転送が可能です。

パフォーマンスに関しては、プロトコルではなくデバイスの速度によって制限される可能性があります。

于 2012-04-03T20:04:57.470 に答える
0

まあ、常にJSONがあります。両端で十分にサポートされている必要があり、サーバーが生成してクライアントが消費するのは簡単です。帯域幅の問題に役立つかどうかはわかりません...

于 2012-04-03T22:13:49.623 に答える
0

クライアントとサーバー間でコードを共有したい場合 (およびシリアライズ/デシリアライズが理にかなっている場合)は、おそらくMonoDroidを検討する価値があります。

あなたが何を構築しているのかわからないので、続行する前に REST について読むことをお勧めします。さまざまなクライアントが簡単に使用できる優れた API を作成する方法について、貴重な指針を提供してくれるはずです。

于 2012-04-03T22:02:44.903 に答える