2016-05-04 73 views
0

Exchange Serverの制限RCAMaxConcurrency(0-100)を回避するため、接続を1つだけ使用して最大5000人のユーザーを処理できるリスナーサービス(ストリームリスナー) 。私は既に200のテストアカウントと200のテストアカウントに対して偽りの権利を持つ別のアカウントを持っています。 可能であれば、すべてのアカウントを切り替えるのは避けてください。EWS Exchange 1つのExchangeService接続を使用する2人以上のユーザー

私たちはすでにコードを持っており、1人のユーザーに偽装を行っても問題ありません。

public void SuscribeToCalendar() 
{ 
    // Set the email address of the account to get the appointment. 
    service.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.PrincipalName, "xxxxxxxxx"); 
    // Subscribe to streaming notifications in the Inbox. 
    StreamingSubscription streamingSubscription = service.SubscribeToStreamingNotifications(
     new FolderId[] { WellKnownFolderName.Calendar }, EventType.Created, EventType.Modified, EventType.Moved); 

    // Create a streaming connection to the service object, over which events are returned to the client. 
    // Keep the streaming connection open for 30 minutes. 
    StreamingSubscriptionConnection connection = new StreamingSubscriptionConnection(service, 30); 
    connection.AddSubscription(streamingSubscription); 
    connection.OnNotificationEvent += OnNotificationEvent; 
    connection.OnDisconnect += OnDisconnect; 
    connection.Open(); 
} 
+0

はいはいフェルナンドは、私は本当に多分これはあなたのアイデアhttps://github.com/rojobo/を与えることができるあなたが達成したいのか理解が、私のアプリを見てはいけないと私は偽装を使用ehowをSE EWSContactsSynchronization/blob/master/cContactsSynchronization.vb – rojobo

答えて

2

RCAMaxConcurrencyは、RPCを使用して接続するOutlook接続に影響します。 EWSに影響するのは、EWSMaxConcurrencyであり、既定値の10よりもはるかに低い値です。 (EWSMaxSubscriptionsの影響を受けるのは20です)。

偽装の設定はEWS要求のヘッダーに影響するため、1人のユーザーは拒否できないため、サブスクリプションを作成するときは、購読するユーザーごとに1つのコールが必要です。サブスクリプティングは、https://msdn.microsoft.com/en-us/library/office/dn458789(v=exchg.150).aspxを使用して、偽装を使用して1つの接続にまとめることができます。

グループの制限は、1グループあたり200人のユーザーです。サブスクリプションでのチャーンの量を考えれば、それ以上のことはもう必要ありません。偽装を使用している場合、同じメールボックスでグループをアンカーしない限り、接続の数は問題になりません。

乾杯 グレン

+0

はい、あなたは本当に私が探しているものを理解していました。今私の関心事は、交換所にすべてのスロットリング制限ポリシーがある場合、どのようにすることができますか。スマートフォンを使用している1000人の従業員は、交換通知を同時に受信しますか?それらの10,20,200の制限はあまりにも少ない。 –

+0

リスナーサービスをサーバー(Exchangeとモバイルアプリの間)でコーディングすることなく、モバイルアプリからEWSを使用する方法はありますか? –

+1

>>スマートフォンを使用している1000人の従業員が、交換通知を同時に受信しますか?並行処理の制限はユーザーごとに行われるため、その例ではデバイス/ユーザーごとに1つの接続のみが使用されます。この制限は、1つのユーザーアカウントに基づいています。同時に10個の同時接続を開くことはできません(Exchangeサーバーレベルで同時接続数に制限はありません)。あなたの偽装しているユーザーに接続が課金されるため、同時使用の問題が本当に消えてしまう使用偽装が本当に消えてしまいます。 –

関連する問題