2010-12-29 14 views
1

私は、かなり典型的なクライアント/サーバーアーキテクチャで、フロントエンドが.NETで書かれ、Javaで書かれたバックエンドから送られたデータを表示していると思います。Javaサービスと.netクライアントの間でデータをやり取りする最善の方法は何ですか?

現在、カスタムのメッセージベースのフレームワークを使用して、データスナップショットと更新をクライアントに送信しています。これはアップグレードされる可能性があります。基本的なJavaサービス/ .netクライアントの設定は石で設定されていますが、メッセージフレームワークの代わりに、たとえばWPF MVVM(Sliverlightを参照)、Java Webサービスへのデータバインディング、またはおそらくCoherenceを参照したいと考えています。

私は、他の人がこのアプローチや他のアプローチで経験したことが何であるか疑問に思っていました(明らかに、すべての状況で黄金の弾丸がありません...)。

クライアントは、頻繁に更新され、編集可能な大規模なデータセットを、主にグリッドで表示できるという要件があります。

更新 私は、REST/SOAPはそれを行うための標準的な方法であることを受け入れてきましたが、私はまだ、特に性能の観点から、他のアプローチを聞いて興味があると思います。

答えて

4

Webサービスの最も一般的な選択である:

  • RESTfulなサービス - より柔軟な、いや、厳密に定義されたスキーマ
  • SOAPサービス - 剛体スキーマ、ある柔軟性に劣る
+0

そして、あなたのRESTをお勧めします。それはより簡単で非常に強力です。そして、私たちは21世紀に入っています... :) – AlexR

+0

こんにちは、私はこれをupvoteしますが、大規模なデータセットではREST/SOAPに最適ですか?メッセージベースまたはキャッシュベースのアプローチを使用する利点は、クライアントからサーバーに更新をプッシュできることです。REST/SOAPサービス(ポーリング/ロングポーリング)で同じことをする必要があると思います。メッセージ/キャッシュのアプローチは、データをマーシャリングする方法や、サイズを最小限に抑え、パフォーマンスを最大化する方法については賢明かもしれません。私はこの種のもののためにRESTを使用したことはありませんので、私は提案にオープンしています... – Andy

+0

"large"を定義していますか? – Bozho

3

チェックアウトprotobuf、良いプラットフォームにとらわれないプロトコル。

+0

+1 ...私が最初に読んだから私は夢中になった:) Go go go、別の光沢のあるプロジェクトが作成された。 – SyntaxT3rr0r

関連する問題