Когда я запускаю свое приложение 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 (do webrequest)
При увеличении количества запросов возникает исключение (8+ запросов / сек).Это же исключение для всех трех вариантов.Когда я запускаю роль в локальном DevelopmentFabric, все три варианта работают просто отлично.Если кто-то может дать мне несколько советов о том, что может пойти не так, я ценю это.Если у вас есть другие идеи по созданию нагрузки такого типа из Azure и C #, поделитесь своими мыслями.