Вопрос по azure, appdomain, azure-web-sites – Приложение Azure Websites. Много перезапусков.

4

У меня работает группа сайтов asp.net 4.0Сайты Azure

Режим вычислений: СтандартныйРасположение: Северная ЕвропаЕмкость автомасштабирования: Выкл.Размер экземпляра:большойКоличество экземпляров: 1

Время отклика очень медленное, трафик нормальный, но мой журнал показывает многоЗавершение работы AppDomain (более 3 за одну минуту), Мои веб-сайты загружают данные в кэш во время de Application_Start, чтобы быстро реагировать на все последующие запросы, но если домены приложений перезапускаются каждый раз, невозможно дать приемлемое время ответа.

ShutdownReason значений много:

ConfigurationChangeHostingEnvironmentCodeDirChangeOrDirectoryRenameBinDirChangeOrDirectoryRenameBrowsersDirChangeOrDirectoryRename

Это не имеет смысла, потому что я не изменил файл в этих папках.

Я протестировал один из этих сайтов в бесплатном режиме, работающем очень быстро и без неожиданного перезапуска AppDomain.

Благодарю.

Обновить:

Я включил этот код в Application_Start, никаких изменений файла не обнаружено, и домен приложений перезапускается снова и снова ...

var monitorPath = HostingEnvironment.MapPath("~/");
Application.Add("watcher", new FileSystemWatcher(monitorPath));
fsw = (FileSystemWatcher) Application["watcher"];
fsw.EnableRaisingEvents = true;
fsw.IncludeSubdirectories = true;
fsw.Changed += fsw_Changed;
fsw.Created += fsw_Created;
fsw.Deleted += fsw_Deleted;
fsw.Renamed += fsw_Renamed;

Обновление 15.07.2013:

используя код из статьи ScottGuhttp://weblogs.asp.net/scottgu/archive/2005/12/14/433194.aspx

Я зарегистрировал это:

_shutDownMessage=Directory rename change notification for 'C:\DWASFiles\Sites\my-sitename\VirtualDirectory0\site\wwwroot'.
File Change Notification Error in wwwroot
HostingEnvironment initiated shutdown
Change Notification for critical directories.
File Change Notification Error in App_GlobalResources
Change Notification for critical directories.
File Change Notification Error in bin
Change Notification for critical directories.
File Change Notification Error in App_Browsers
Change Notification for critical directories.
File Change Notification Error in App_Code
Change Notification for critical directories.
File Change Notification Error in App_WebReferences
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
File Change Notification Error in C:\DWASFiles\Sites\my-sitename\VirtualDirectory0\site\wwwroot
CONFIG change
File Change Notification Error in 
HostingEnvironment caused shutdown
File Change Notification Error in 
Change Notification for critical directories.
File Change Notification Error in App_LocalResources
Change Notification for critical directories.
File Change Notification Error in App_LocalResources
CONFIG change

_shutDownStack=   at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
   at System.Environment.get_StackTrace()
   at System.Web.Hosting.HostingEnvironment.InitiateShutdownInternal()
   at System.Web.Hosting.HostingEnvironment.InitiateShutdownWithoutDemand()
   at System.Web.HttpRuntime.ShutdownAppDomain(String stackTrace)
   at System.Web.HttpRuntime.OnCriticalDirectoryChange(Object sender, FileChangeEvent e)
   at System.Web.FileChangesMonitor.OnSubdirChange(Object sender, FileChangeEvent e)
   at System.Web.DirectoryMonitor.FireNotifications()
   at System.Web.Util.WorkItem.CallCallbackWithAssert(WorkItemCallback callback)
   at System.Web.Util.WorkItem.OnQueueUserWorkItemCompletion(Object state)
   at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()
   at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

Обновление 19.07.2013:

МетрикаВходные данные очень высокий и не имеет отношения к метрике запросов, но когда я настраиваю параметр fcnMode = ”Disabled”, вход данных сразу падает до нормальных значений в соответствии с трафиком.

Не существует необработанного исключения в журналах. Alejandro Melis Fernández
Похоже, вы выполняете запись в корневую папку своего приложения из его подпапок. Я думаю, что вам лучше всего получить список файлов в корневой папке вместе со временем модификации и внимательно посмотреть на них, чтобы найти то, что вызывает перезапуск. Однажды я сам столкнулся с этой проблемой и исправил ее, исключив записи. sharptooth
Вы проверяли папку / LogFiles, используя FTP или Kudu-VFS? Здесь вы можете увидеть любое исключение на вашем сайте. Возможно, вы возвращаете необработанное исключение после возврата содержимого, которое приводит к завершению рабочего процесса вашего сайта. Используйте данные в вашем профиле публикации для подключения через FTP или войдите в https: // <ваш сайт> .scm.azurewbsites.net / vfs, чтобы использовать Kudu VFS. Вы можете загрузить весь каталог журналов с помощью Kudu ZIP следующим образом: https: // <ваш сайт> .scm.azurewebsites.net / zip / LogFiles MattD
Веб-сайт не записывает ни одного байта на диск, а в файле eventlog.xml есть только небольшая группа исключений. :-( Alejandro Melis Fernández

Ваш Ответ

1   ответ
3

работает в 4.0), AppDomain прекращает перезапуск

  <httpRuntime fcnMode="Disabled" />

Но теперь возникает вопрос, почему FileChangesMonitor на веб-сайтах Azure (по крайней мере, на веб-сайтах в моей подписке) дает следующее _shutDownMessage:

File Change Notification Error in wwwroot
HostingEnvironment initiated shutdown
Change Notification for critical directories.
File Change Notification Error in App_GlobalResources
Change Notification for critical directories.
File Change Notification Error in bin
Change Notification for critical directories.
File Change Notification Error in App_Browsers
...

Обновить:

Причиной была ошибка в SMB, которая затрагивала только местоположение в Северной Европе.

Похожие вопросы