Я новичок в Azure и запускаю около 20 веб-сайтов (веб-приложений) на Azure B1 Basic, 1 ядро, 1,75 ГБ ОЗУ, 10 ГБ хранилища. Это сайты с очень низким трафиком, которые ежедневно посещают десятки человек.
Сайты включают одностраничные страницы статического хранения, некоторые сайты Umbraco, использующие SQL Server или SQLLite, и несколько сайтов WordPress, использующих MySQL (в приложении). Один сайт использует расширение, чтобы получить бесплатный сертификат Lets encrypt ssl.
Служба приложений использует около 2 ГБ из 10 ГБ хранилища, а использование памяти составляет около 60%.
Каждые несколько недель несколько случайных сайтов будут отключаться с ошибкой http 500 на несколько минут в течение получаса или дольше. Я использую мониторинг безотказной работы роботов, поэтому вижу, как приходят уведомления по электронной почте. Некоторые сайты, похоже, перезапускаются с большей вероятностью, чем другие. Иногда сайт не перезапускается с ошибкой 500, пока я не сделаю это вручную. Мне нужно выключить «всегда включен», чтобы они перезапустились без ошибок.
Я использовал «Диагностика и решение проблем» и получил сообщения о следующих проблемах.
Причины перезапуска веб-приложения. Примерно 19 сентября 2017 г., 21:22:21 (всемирное координированное время), на экземпляре RD0003FF1C76E9 ваше приложение было перезапущено из-за периодической проблемы с инфраструктурой Azure при доступе к удаленному хранилищу файлов. Это может произойти из-за нескольких причин, например, из-за того, что экземпляры платформы обновляются или экземпляры испытывают большие задержки при доступе к удаленному хранилищу. В случае, если экземпляры, на которых работает ваше приложение, испытывают большие задержки при доступе к удаленному хранилищу, платформа пытается исцелить ваше приложение, переключаясь на другое удаленное хранилище, которое имеет низкую задержку. Это также может привести к перезапуску процесса приложения. Если это единичный случай, то с вашей стороны не требуется никаких дальнейших действий. Но если вы видите, что это происходит часто, то включение функции локального кеширования может в некоторой степени снизить зависимость от файловых серверов хранилища. Изучите локальный кэш службы приложений (https://docs.microsoft.com/en-gb/azure/app-service/app-service-local-cache-overview)
На экземпляре RD0003FF1C95DF ваше приложение было переработано, так как масштабируемая единица Azure подвергалась обновлению. Это событие происходило несколько раз в течение дня. Microsoft периодически обновляет базовую платформу Azure, чтобы повысить общую надежность, производительность и безопасность инфраструктуры платформы, на которой выполняется ваше приложение. Большинство этих обновлений выполняется без какого-либо влияния на ваше веб-приложение. Чтобы уменьшить влияние таких событий на ваше приложение, рассмотрите возможность развертывания приложения в нескольких регионах и используйте диспетчер трафика Azure для распределения нагрузки по регионам. Изучите диспетчер трафика Azure (https://docs.microsoft.com/en-gb/azure/app-service/web-sites-traffic-manager)
Что я могу сделать, чтобы это исправить? Безопасен ли предлагаемый локальный кеш для использования на сайте с управляемым контентом?
Это обычный сервис от Azure или это необычно.
Спасибо
Как сказано в вашем отчете о проблеме,
Ваше приложение было переработано из-за периодической проблемы с инфраструктурой Azure при доступе к удаленному хранилищу файлов.
Azure необходимо обновить инфраструктуру и одновременно поддерживать работоспособность вашего ресурса. Итак, для этого он перерабатывает ваши приложения случайным образом.
Что я могу сделать, чтобы это исправить? Безопасен ли предлагаемый локальный кеш для использования на сайте с управляемым контентом?
А пока нам нужно дождаться завершения этого обновления лазурью. Мы не можем исправить это из-за проблемы с инфраструктурой Azure. Это не займет слишком много времени. Использование виртуальной машины Azure или службы веб-приложений вполне безопасно для хранения ваших приложений в облаке.
Локальный кэш службы приложений можно использовать для службы веб-приложений Azure. Согласно вашей проблеме, вам не нужно использовать эту функцию, потому что ваши приложения работают на виртуальной машине Azure. После этого обновления все ваши приложения будут работать нормально.