2016-06-06 3 views
1

Однажды в голубой луне мы получаем исключение из нашего веб-приложения Azure при инициализации кеша.Что приводит к тому, что d: диск недоступен в веб-приложении на 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 (строковый псевдоним, обратный вызов FileChangeEventHandler, FileAttributesData & fad) в System.Web.Caching.CacheDependency.Init (Boolean isPublic , String [] filenamesArg, String [] cachekeysArg, зависимость CacheDependency, DateTime utcStart) в System.Web.Caching.CacheDependency..ctor (имя файла String, начало DateTime) в System.Web.Hosting.MapPathBasedVirtualPathProvider.CacheLookupOrInsert (String virtualPath, Boolean isFile) в 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 curre ntDisplayMode, Boolean requireConsistentDisplayMode) в System.Web.Mvc.VirtualPathProviderViewEngine.GetPathFromGeneralName (ControllerContext controllerContext, List 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) в системе. Web.Mvc.ViewResult.FindView (контекст ControllerContext) в System.Web.Mvc.ViewResultBase.ExecuteResult (контекст ControllerContext) в System.Web.Mvc.Async.AsyncControllerActionInvoker. <> c__DisplayClass21.b__1e (IAsyncResult asyncResult) в System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction (IAsyncResult asyncResult) в System.Web.Mvc.Controller.b__1d (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.WrappedAsyncVoid 1.CallEndDelegate (IAsyncResult asyncResult) в System.Web.Mvc.Controller.EndExecute (IAsyncResult asyncResult) в System.Web.Mvc.MvcHandler.b__5 (IAsyncResult asyncResult, ProcessRequestState innerState) в System.Web.Mvc. Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate (IAsyncResult asyncResult) в System.Web.Mvc.MvcHandler.EndProcessRequest (IAsyncResult asyncResult) в System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() в системе. Web.HttpApplication.ExecuteStep (шаг IExecutionStep, Boolean & завершен синхронно)

+0

Мой ответ на вопрос [Как выглядит архитектура Azure Web Apps?] (Http://stackoverflow.com/q/35253899/5255018) –

ответ

1

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

В то же время, вот некоторые полезные статьи:

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

Изменение временного диска в Azure VM и использование D: для постоянных информационных дисков

Надежда, что помогает!