WCF Throttle Settings

Я работал над доказательством концепции, используя WCF и MSMQ. Я играл вокруг с настройками дросселя, используя по умолчанию Эта статья и также добавляя мои собственные настройки в файл конфигурации. У меня 2 четырехъядерных процессора Xeon, на которых работает это приложение. Независимо от того, какие настройки я применяю, он всегда захватывает только 8 сообщений за раз (что соответствует моим вычислительным ядрам). Я хочу, чтобы каждое сообщение обрабатывалось в одной транзакции, так что это может быть частью проблемы... не уверен. Я просто предполагал, что он будет обрабатывать гораздо больше сообщений одновременно, чем это происходит.

Поведение службы:

   [ServiceBehavior(UseSynchronizationContext = true,
                     ReleaseServiceInstanceOnTransactionComplete=true,
                     ConcurrencyMode = ConcurrencyMode.Single,
                     InstanceContextMode = InstanceContextMode.PerCall)]

Поведение конечной точки:

  
    
      
    
  

Мой собственный дросселирование службы:


Я что-то упускаю из виду? Возможно, я просто не до конца понимаю настройки дросселирования по умолчанию / пользовательские настройки (Likely).

EDIT

Я изменил ConcurrencyMode (изменил на Multiple) вместе с параметром ReleaseServiceInstanceOnTransactionComplete. Изменение на Multiple, похоже, ничего не изменило?

EDIT. Может быть, дело в настройке TransactionBatch? У меня он установлен на один...?

Спасибо,

S

6
задан scarpacci 8 January 2012 в 03:33
поделиться