BasicHTTPBinding と SSL が有効になっているコンソール アプリに WCF サービスをデプロイしています。次の属性も設定されます。
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
また、スロットリング動作を
<serviceThrottling maxConcurrentCalls="2147483647" maxConcurrentSessions="2147483647"
maxConcurrentInstances="2147483647" />
一方、複数のクライアントを同時に開始し (複数のスレッド)、サーバー上でトランザクションを実行するテスト クライアント (負荷テスト用) を作成しました。すべて問題ないように見えますが、サーバーでは CPU 使用率が増加しないため、ログを追加してサーバーへの同時呼び出しの数を表示したところ、6 を超えたことはありませんでした。
パフォーマンス カウンターのログ記録コードを 2 回以上確認しましたが、問題ないように思えます。
では、この状況でどこに問題があるのかお聞きしたいです。ContextMode や ConcurrencyMode はまだ指定していません。
この投稿の後、テストクライアントの別のインスタンスを開始するたびに、同時サーバーコールカウンターが2に増加することに気付きました.1つのインスタンスのみを実行している場合、同時受信コールの最大数は2になり、インスタンスが2つある場合は同じ値が4になります等々。一度のプロセスからの WCF 呼び出しの数に制限はありますか?
********3月17日に追加********
今日、サーバーが実行されている同じマシンで、1 つのテスト クライアント (50 人の同時ユーザー) を使用して別のテストを実行しました。今回は、表示したい正確な結果を取得しています (つまり、サーバーが受信した最大同時呼び出し数 = 50)。
しかし、他のマシンでも同じことをする必要があります。誰でもこれについて私を助けることができますか?