У меня возникает особая проблема при выполнении рабочих процессов.
Я пробовал все, что мог придумать, и теперь мне нужны идеи.Служба Workflow перестает отвечать после 464 сообщений
Вот моя конфигурация:
1. WF4 Workflow Service (xamlx) размещается в IIS 7 и использует net.msmq/netMsmqBinding для транспорта (MSMQ является транзакционной).
2. Не используется постоянство рабочего процесса.
3. Я использую консольный клиент приложения для отправки сообщений в рабочий процесс (каждое сообщение создает новый рабочий процесс). 4. Каждый рабочий процесс выглядит так: Дождитесь сообщения START -> Подождите, пока появится сообщение END (я отправляю только сообщения START).
Если я отправляю 500 сообщений - 464 обрабатывается правильно, но над этим все сообщения переходят в очередь lock_ *, а затем переходят в очередь ядов. Я осмотрены Debug, Аналитические журналы событий, а также сообщения и трассировки svclogs Вот самое подробное сообщение, которое я получаю:
System.TimeoutException, mscorlib, Version = 4.0.0.0, Culture = нейтрально, PublicKeyToken = b77a5c561934e089 Операция не завершилась в течение отведенного времени ожидания 00:00:30. Время , выделенное этой операции, могло быть частью более длинного времени ожидания . на System.Runtime.AsyncResult.End [TAsyncResult] (IAsyncResult результат) на System.ServiceModel.Activities.Dispatcher.PersistenceProviderDirectory.LoadOrCreateAsyncResult.HandleReserveThrottle (IAsyncResult результата) при System.Runtime.AsyncResult.AsyncCompletionWrapperCallback (IAsyncResult результат) Исправление System.TimeoutException: операция не завершилась в течение отведенного времени ожидания 00:00:30. Время, отведенное для этой операции, возможно, было частью длинного таймаута . на System.Runtime.AsyncResult.End [TAsyncResult] (IAsyncResult результат) на System.ServiceModel.Activities.Dispatcher.PersistenceProviderDirectory.LoadOrCreateAsyncResult.HandleReserveThrottle (IAsyncResult результата) при System.Runtime.AsyncResult.AsyncCompletionWrapperCallback (IAsyncResult результат)
в этой просьбе точки к http://localhost/MyWebService?wsdl
также не с 404.
Если перезапустить IIS - все возвращается в нормальное русло, пока 464 сообщения не отправляются.
- Где я могу найти более подробный журнал? (У меня уже есть System.Diagnostics, установленный на максимальную подробность)
- Действительно ли это номер 464?
- Что может быть причиной блокировки этого веб-сервиса?
Это было. Последующий вопрос: в каком журнале я мог бы это понять? Есть ли место, где говорится «слишком много случаев - дросселирование ...». –
Морис, чтобы сделать его справедливым: http://stackoverflow.com/questions/9279252/iis-asp-net-where-can-i-see-logs-for-the-server-itself-specifically-throttl –
Как вы используют IIS7, вы можете установить Windows Server AppFabric. – Maurice