У меня есть рабочая роль, в которой выполняется ряд потоков для обработки соединений с клиентами. Во время нагрузочного тестирования мы заметили, что эта роль становится неактуальной и остается в этом состоянии, пока мы не перезапустим ее. Рассматривая его в отладчике визуальной студии (путем приостановки активного процесса), мы можем видеть, сколько потоков ждет, но когда оно не приостановлено, никаких действий не происходит. Как узнать, что заставляет роль оставаться в этом состоянии?Windows Azure Role Unresponsive
ответ
Как вы упомянули, что при выполнении нагрузочного теста возникла проблема с вашей рабочей ролью, можно с уверенностью предположить, что вначале Роль работала нормально. Это приводит к выводу, что проблема скорее специфична для приложения, чем какая-то конкретная платформа. Есть два способа вы можете получить некоторую диагностическую информацию из Windows Azure VM:
Вариант 1 (Preferred): Для того, чтобы проверить, что происходит в вашем Azure VM, вам действительно нужно добавить Windows Azure Diagnostics с вашей роли, чтобы вы могли получить счетчик производительности, информацию о памяти, состояние процесса роли и другие данные, перенесенные с Azure VM на ваше Azure Storage, которое вы можете анализировать в автономном режиме.
Вариант 2. Включите RDP-доступ к вашей Azure VM, а затем войдите в свою Azure VM и установите Perfmon, Process Explorer и другие инструменты мониторинга работоспособности в вашей Azure VM и отслеживайте, что происходит.
Вариант 3 (Last Resort): RDP к вашей Azure VM и установить WinDBG и отладить процесс
хозяина В таком состоянии, когда у вас есть рабочий роль перестал работать, это то, что я действительно предлагаю к любому:
- посмотреть на CPU, давление памяти, список потоков и выяснить, какие потоки заблокированы и что может быть причиной.
- Посмотрите на работоспособность хост-работника, когда он был запущен в последний раз, по какой-то причине он перерабатывается по какой-либо причине, как долго он работает в Azure VM
- Если у вас есть отдельный процесс, который задан как «ProgramEntryPoint» в ваша рабочая роль, проверьте ее работоспособность
- Проверьте журнал событий в приложении на системном уровне для любой подсказки. В роли «Рабочий» я не вижу, что в журнале событий приложений будет что-то, но стоит взглянуть.
- Я использую Process Monitor для отслеживания нескольких процессов и сбора журнала, чтобы увидеть, когда процесс умирает, что было последним состоянием, к чему он обращался, и был ли он голоден другими проблемами.
Суть в том, что вам действительно нужно выкопать основную причину в Azure VM практически так же, как вы это сделаете на машине на месте.
- 1. Windows Azure VDI Role
- 2. Windows Azure Inter-Role связи
- 3. Windows Azure В-Role проблема Кэширование Исключение
- 4. Azure Role Start Order
- 5. Profiling Azure Worker Role
- 6. Azure Worker Role Blob backup
- 7. Azure Web Role and Codeigniter
- 8. Гарантия azure worker role SLA
- 9. Azure web role with cdn
- 10. MongoDB on Azure worker role
- 11. Azure EventProcessorHost and Worker role
- 12. Azure Worker Role + Ninject + Quartz
- 13. Azure Cloud Web Role + AspNetCompiler?
- 14. Azure Role Enviroment не инициализируется
- 15. Опубликовать пакет развертывания в Windows Azure Web Role
- 16. Windows Azure Role Environment - Не удается найти сборку
- 17. Сгенерировать CSS из LESS на windows azure worker role
- 18. Azure Worker Role Ошибка с помощью отладчика
- 19. Azure Worker Role Пользовательские счетчики производительности
- 20. Веб-проекты в Azure Web Role
- 21. RichEditBox FontSize C# windows store app unresponsive
- 22. Определение неуправляемой утечки памяти в Azure Web Role (Windows Azure Accelerator)
- 23. Entity Framework DbContext в Azure Web Role
- 24. Azure Cloud Role included storage = дополнительные расходы?
- 25. Azure Worker Role Ignoring ServiceConfiguration.Local Configuration
- 26. Включить дополнительные DLL в Azure Worker Role
- 27. Сценарии, где Azure Web Role перезагружается
- 28. Фоновая тема в Azure Web Role
- 29. Azure Web Role Mutliple Развертывание слотов
- 30. Azure Web Role warm up после Deploy
Спасибо за это, действительно хорошие советы. Сначала этот вопрос был представлен только на роли работника в Azure, но с некоторой настройкой нашего тестового ремня мы начали видеть его в процессе разработки. У нас есть: * Диагностика удаленного доступа/Azure * Счетчики Perf и настраиваемые журналы событий, настроенные для конкретных отчетов для приложения Существует множество мест, где выполняются операции асинхронного сканирования. Мы предполагаем, что существует необработанное исключение, но его оказалось трудно найти. – Irwin
Могу я спросить, какой Azure SDK вы используете? Были некоторые проблемы с Remote Forwarder в более раннем SDK, которые могут вызвать случайные проблемы в Azure, однако SDK 1.6 очень прочен в этом.Что делать, если вы удалите RDP-доступ и Azure Diagnostics с вашим приложением, проблема все еще сохраняется? – AvkashChauhan