異種.NET WPF&J2EE 3層アーキテクチャのためのベストプラクティス
-
14-09-2020 - |
質問
ほとんどASP.NET開発者であるので、J2EEまたはWFPのベストプラクティス、パターンなどのいずれにもよく知られていませんが、私が関与しているプロジェクトはより良いことができましたが、私はアーキテクチャの何が問題なのか正確に指を正確に置くことはできません。
異種分散3層アプリケーションのための最良の(*)アーキテクチャは、具体的には、次のようなシステムを実装したいと思った場合:
- Java EE 5 JBoss Application Serverのバックエンド - EJBサービスを公開します。 SOAP、RESTまたはJMS Beans として
- SQL ServerまたはOracleデータベースへのHibernate
- .NET 4.0 WPF Desktop Client
- .NET 4.0 Silverlight Web Client
- jsp / pure-html webクライアント
- 上記のコンポーネントのいずれかに対処することをお勧めします。どのような種類のサービス(SOAP、REST、メッセージング?)
- .NETクライアントとJavaバックエンドの間の通信の待ち時間を減らす方法?
- 次のパターン/アプローチWPFクライアントコード(MVVMパターン?)の観点から、Javaバックエンド(WCF?) との通信
- WCFクライアントを使用する場合は、J2EEサービスのようなJ2EEサービスをどのように保護するか(認証、承認)。
- 探索する建築の問題とそれらに対処する方法は何ですか。セキュリティ、スケーラビリティ、パフォーマンスなどの面で?
*
私はおそらく「最高のアーキテクチャ」を定義することが不可能であることを知っていますが、私は建築アプローチ、ベストプラクティス、パターンなどに関する意見について興味があります。
私たちのデザイン/アーキテクチャで見る明らかな問題の1つは、.NETクライアントとJavaバックエンドの間のSOAP Webサービス通信が非常に遅いため、おそらく待ち時間の問題が原因です。全体のUIの経験は非常に低調です。そしてそれは単一のユーザーを持つ - プロダクションでは+/- 100の同時ユーザーを期待しています。
私はいかなるコメント/意見を感謝します。
質問:
(この質問がこのサイトにとって不適切であるかどうか謝罪します、私はあなたが主観的に思われている質問が閉じている質問を見ます」と私が探しているものは主観的な意見であり、私は混合.NET / Java環境で働いている他のユーザーが興味があるでしょう。)
ありがとう!
解決
このプロジェクトのアーキテクチャは複雑すぎました。
私は以下の変更を加えたでしょう:
- テクノロジ数を減らすためにバックエンドで.NETを使用してください
- WPFクライアントをドロップし、WindowsクライアントとしてブラウザからSilverlightを使用します。
- UI Response を保持するためにバックエンドへの非同期呼び出しのみを使用してください。
- WCF Webソケットを使用してバックエンド に相談してください。
- Web UIとしてHTML5を使用すると、これはWebソケットもサポートしているので、バックエンド と話す単一の方法があります。
Webソケット:> http://tomasz.janczuk.org/
所属していません StackOverflow