Что приводит к недоступности диска d:\ в веб-приложении Azure?

Оказавшись в голубой луне, мы получаем исключение из нашего веб-приложения Azure при инициализации кэша.

Сообщение об ошибке гласит Failed to start monitoring changes to 'D:\home\site', Повторное развертывание решило проблему. Мы используем MvcDonutCaching, но я не знаю, насколько это актуально.

У кого-нибудь была подобная проблема, и, возможно, предложение, как мы можем решить эту проблему?

System.Web.HttpException (0x80070035): не удалось запустить мониторинг изменений в "D:\home\site". в System.Web.FileChangesMonitor.FindDirectoryMonitor(String dir, Boolean addIfNotFound, Boolean throwOnError) в System.Web.FileChangesMonitor.StartMonitoringPath(обратный вызов String, FileChangeEventHandler. String[] filenamesArg, String[] cachekeysArg, зависимость CacheDependency, DateTime utcStart) в System.Web.Caching.CacheDependency..ctor(имя файла String, начало DateTime) в System.Web.Hosting.MapPathBasedVirtualPathProvider.CacheLookleanFis () в System.Collections.Concurrent.ConcurrentDictionary 2.GetOrAdd(TKey key, Func 2 valueFactory) в System.Web.Mvc.BuildManagerViewEngine.FileExists(ControllerContext controllerContext, String virtualPath) в System.Web.WebPages.DefaultDisplayMode.GetDisplayInfo (HttpContextBase httpContext, String virtualPath, Func 2 virtualPathExists) at System.Web.WebPages.DisplayModeProvider.GetDisplayInfoForVirtualPath(String virtualPath, HttpContextBase httpContext, Func 2 virtualPathExists, IDisplayMode currentDisplayMode, логическое значение requireConsistentDisplayMode) в System.Web.Mvc.VirtualPathProviderViewEngine.GetPathFromGeneralName(ControllerContext controllerContext, список списков 1 locations, String name, String controllerName, String areaName, String cacheKey, String[]& searchedLocations) at System.Web.Mvc.VirtualPathProviderViewEngine.FindView(ControllerContext controllerContext, String viewName, String masterName, Boolean useCache) at System.Web.Mvc.ViewEngineCollection.<>c__DisplayClass6.<FindView>b__5(IViewEngine e) at System.Web.Mvc.ViewEngineCollection.Find(Func 2 lookup, Boolean trackSearchedPaths) в System.Web.Mvc.ViewEngineCollection.FindView(ControllerContext controllerContext, String viewName, String masterName) в System.Web.Mvc.ViewResult.FindView(контекст ControllerContext) в System.Web.Mvc.ViewResBult(Контекст ControllerContext) в System.Web.Mvc.Async.AsyncControllerActionInvoker.<> C__DisplayClass21.b__1e(IAsyncResult asyncResult) в System.Web.Mvc.Async.AsyncControllerActionInvyn.W.Sync. (IAsyncResult asyncResult, ExecuteCoreState innerState) в System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid 1.CallEndDelegate(IAsyncResult asyncResult) at System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid1.CallEndDelegate (IAsyncResult asyncResult) на System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) на System.Web.Mvc.MvcHandler.b__5(IAsyncResult asyncResult.WynSynWraWWRR).SyncWRR.Ru.SynSWRR_Ser_WR_Ser_WR_Ser_WeR_WR_S.WeC_RuS.WeC_RuT.WeS.Ru.Sec.SevSeR....RuS...W..Rec...... V. Re. `1.CallEndDelegate(IAsyncResult asyncResult) в System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) в System.Web.HttpApplication.CallHandlerExecutionStep.Secu.Tepp.Exte.Tepp.Exte.Tepp.Exte.Tepp.Exte.Tepp.Exte.HT (Шаг IExecutionStep, логический и завершен синхронно)

1 ответ

Это диск временного хранения, поэтому его не следует использовать для хранения чего-либо, что всегда должно быть там. Возможно, MvcDonutCaching необходимо учитывать временную недоступность диска D? Если это так, пожалуйста, свяжитесь с командой разработчиков, чтобы уточнить их.

А пока вот несколько полезных статей:

Где мои данные с диска D:

Измените временный диск в виртуальной машине Azure и используйте D: для постоянных дисков с данными

Надеюсь, это поможет!

Другие вопросы по тегам