WaWorkerHost.exe аварийно завершает роль: CallbackException
Когда я запускаю свое приложение WorkerRole C# в Azure, через некоторое время waworkerhost.exe вылетает из-за следующего исключения:
Application: WaWorkerHost.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.Runtime.CallbackException
Stack:
at System.Runtime.Fx+IOCompletionThunk.UnhandledExceptionFrame(UInt32, UInt32, System.Threading.NativeOverlapped*)
at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32, UInt32, System.Threading.NativeOverlapped*)
У меня есть приложение, которое генерирует нагрузку на веб-сервер. Меня не волнует фактический ответ, но я хочу контролировать количество запросов в секунду. Поэтому у меня есть таймер, который срабатывает каждую секунду и генерирует несколько запросов. Я пробовал следующие варианты:
- Parallel.For с веб-запросами
- Для цикла с ASync WebRequests
- Для цикла с ThreadPool.QueueUserWorkItem(сделать веб-запрос)
При увеличении количества запросов возникает исключение (8+ запросов / сек). Это же исключение для всех трех вариантов. Когда я запускаю роль в локальном DevelopmentFabric, все три варианта работают просто отлично. Если кто-то может дать мне несколько советов о том, что может пойти не так, я ценю это. Если у вас есть другие идеи по созданию нагрузки такого типа из Azure и C#, поделитесь своими мыслями.
1 ответ
Автор ответил на вопрос в комментарии к оригинальному сообщению, но для большей наглядности я сообщаю об этом здесь:
Оказывается, это проблема IntelliTrace, см. Http://social.msdn.microsoft.com/Forums/en-ZA/windowsazuretrou устранение неисправностей/thread/543da280-2e5c-4e1a-b416-9999c7a9b841:
...
После повторного развертывания моего решения с отключенным Intellitrace проблемы, которые были устранены, и моя WorkerRole оставались исправными.