8

エンタープライズ環境で WCF を使用している人々からの連絡をお待ちしています。

ロールアウトの主なハードルは何でしたか? パフォーマンスの問題?どんなヒントでも大歓迎です!

可能であれば、いくつかの一般的な統計とサーバー構成を提供してください!

4

4 に答える 4

7

WCF は構成地獄になる可能性があります。その診断と svcTraceViewerに精通してください。不可解で役に立たない例外が発生しないようにしてください。また、生成されたクライアントの破棄可能なパターンの壊れた実装に注意してください。

于 2008-10-23T16:36:28.933 に答える
3

私は最近、以前は従来の asp.net Web サービスとのクライアント/サーバー通信を処理し、データセットをやり取りしていた会社に雇われました。

私はコアを書き直したので、Net.Tcp の「接続された」クライアントが存在するようになりました...そしてすべてがそこで行われます。それは 1 週間分の "生産中の発見" でした... しかしそれだけの価値はありました。

ゲームの後半で発見しなければならなかった問題点は次のとおりです。 1) デフォルトのスロットリングは 11 人目以降のユーザーをブロックしていました (デフォルトでは 10 人のみを許可するようになっています)。2) デフォルトの「maxBufferSize」は 65k に設定されていたため、ダウンロードする必要がある最初のビットマップでサーバーがクラッシュしました :) 3) その他のデフォルト設定 (最大同時接続数、最大同時呼び出しなど)。

全体として、それは絶対に価値がありました...インフラストラクチャを変更するだけで、アプリははるかに高速になり、ユーザーが「接続」されたので、サーバーはクライアントにメッセージを送信できます.

その他の優れた利点は、誰が接続しているかを 100% 把握しているため、実際にアプリケーション レベルでライセンス ポリシーを適用できることです。今まで (そして私が雇われる前)、私の会社は単純にログに記録する必要があり、月末には、接続回数が多すぎるクライアントに追加料金を請求していました。

于 2008-10-27T01:08:14.930 に答える
1

すでに述べたように、構成の悪夢と例外はわかりにくい場合があります。トレースを有効にし、トレース ログ ビューアを使用して一般的な問題のトラブルシューティングを行うことはできますが、WCF サービスのトラブルシューティングを行うには、特にギアをシフトする必要があります。

私の組織内のコンポーネント間の通信のため[NetDataContract]に、推奨されるサービスとプロキシで使用することになりました (.NET の外部のプラットフォームと統合することはできず、統合するにはコントラクトを持つアセンブリが必要です)。恒星になり、それを使用することで全体的な開発時間が短縮されました. 私たちにとって、それは正しい解決策でした。

于 2008-10-23T16:58:47.843 に答える
0

WCFは、スケーラビリティ、拡張性、セキュリティなどを念頭に置いて設計されているため、エンタープライズ向けに最適です。

maxidadが言ったように、それは非常に難しい場合がありますが、例外はほとんど何も教えてくれないことが多いので、セキュリティを使用する場合(明らかにエンタープライズシナリオの場合)、証明書、無意味なMessageSecurityExceptionsなどを処理する必要があります。

WCFサービスの処理は、古いasmxサービスの処理よりも確かに困難ですが、一度使用すると、努力する価値があります。

サーバー構成を提供することは、シナリオに適合しなければならないため、役に立ちません。適切なバインディングを使用することは、セキュリティだけでなく、同意も非常に重要です。wcfを使用する場合、唯一の方法はありません。要件について考えてください。コールバックが必要ですか、ユーザーは何ですか?どのようなセキュリティが必要ですか?

ただし、WCFは、エンタープライズ規模のアプリケーションに最適なテクノロジです。

于 2008-10-23T16:49:59.903 に答える