Кэширование веб-ролей Windows Azure (предварительная версия) зависает, что приводит к зависанию эмулятора в цикле развертывания

Я пытаюсь заменить Windows Azure AppFabric Cache недавно выпущенным кэшированием на основе ролей, которое было представлено в выпуске SDK за июнь 2012 года, следуя инструкциям на веб-сайте Microsoft.

Однако при проверке "Включить кэширование (предварительная версия)" в моей веб-роли эмулятору не удастся успешно создать экземпляр веб-сайта (журнал эмулятора: http://pastebin.com/dwbDvak2). Кажется, он застревает в какой-то петле. Отключение кэширования веб-роли заставляет его снова работать. Я получил тот же результат после удаления всех предыдущих пакетов Azure SDK и повторной установки версии 1.7.

Visual Studio сообщает мне, что «экземпляры ролей запускаются дольше, чем ожидалось. Вы хотите продолжить ожидание?» [Да нет]. Нажатие «Да» заставляет его ждать и появляется снова и снова.

Есть ли кто-нибудь, кто может знать, как решить проблему, описанную выше, или, возможно, пробовал новую функцию кэширования веб-ролей и заставил ее работать в эмуляторе azure?

Снимок экрана диалогового окна развертывания локальной среды отладки Azure

Спасибо.

Обновление:

Я создал новое решение и добавил простой сайт MVC, добавил веб-роль и включил кеширование, и произошло то же самое. Итак, я взглянул на средство просмотра событий и нашел 3 записи, касающиеся проблемы:

Fault bucket 3034750239, type 5
Event Name: CLR20r3
Response: Not available
Cab Id: 0

Problem signature:
P1: cacheinstaller.exe
P2: 1.0.4655.0
P3: 4fb0f3f9
P4: CacheInstaller
P5: 1.0.4655.0
P6: 4fb0f3f9
P7: 11
P8: 47
P9: System.TypeLoadException
P10: 

Attached files:
C:\Users\anan\AppData\Local\Temp\WEREA8F.tmp.WERInternalMetadata.xml

These files may be available here:
C:\Users\anan\AppData\Local\Microsoft\Windows\WER\ReportArchive\AppCrash_cacheinstaller.e_1fbc3b72afb6acf93335ca8611850d289906c25_2ddaf529

Analysis symbol: 
Rechecking for solution: 0
Report Id: 3138ba06-b344-11e1-a8d6-402cf41c1e07
Report Status: 0


Application: CacheInstaller.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.MissingMethodException
Stack:
   at Microsoft.ApplicationServer.Caching.AzureCommon.Package.InitializeExternalStoreIfRequired()
   at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
   at System.Threading.ThreadHelper.ThreadStart()

А потом:

Application: CacheInstaller.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.MissingMethodException
Stack:
   at Microsoft.ApplicationServer.Caching.AzureCommon.Package.InitializeExternalStoreIfRequired()
   at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
   at System.Threading.ThreadHelper.ThreadStart()

И:

Faulting application name: CacheInstaller.exe, version: 1.0.4655.0, time stamp: 0x4fb0f3f9
Faulting module name: KERNELBASE.dll, version: 6.1.7601.17651, time stamp: 0x4e21213c
Exception code: 0xe0434352
Fault offset: 0x000000000000cacd
Faulting process id: 0x17b4
Faulting application start time: 0x01cd4750f5db0096
Faulting application path: c:\users\anan\documents\visual studio 11\Projects\AzureCacheTest\AzureCacheTest\csx\Debug\roles\WebRole\plugins\Caching\CacheInstaller.exe
Faulting module path: C:\Windows\system32\KERNELBASE.dll
Report Id: 33a53608-b344-11e1-a8d6-402cf41c1e07

К вашему сведению: это редакция Windows 7 x64 Enterprise, использующая Visual Studio 2012 RC.


person Andre Andersen    schedule 10.06.2012    source источник
comment
Также здесь: social.msdn .microsoft.com/Forums/en-US/windowsazuredevelopment/   -  person user94559    schedule 11.06.2012


Ответы (4)


Я была такая же проблема. Что делать с конфликтом dll AppFabric Server — проверьте, установлен ли у вас AppFabric Server, и либо удалите кеш, либо удалите сборки кеша из GAC. Я удалил, и эмулированный кеш работает нормально.

У меня есть некоторая информация, которая может быть полезна в нашем блоге:

http://blog.elastacloud.com/2012/06/09/using-the-windows-azure-cache-preview-with-sdk-1-7/

person Richard Conway    schedule 12.06.2012
comment
Спасибо, Ричард, за то, что разместили свою ссылку как в MSDN, так и здесь, а также указали на детали, которые я пропустил. Очень признателен! - person Andre Andersen; 12.06.2012
comment
У меня не был установлен AppFabric Server. Но сборки были в GAC. Я удалил их, запустив gacutil /u Microsoft.ApplicationServer.Caching.Client и gacutil /u Microsoft.ApplicationServer.Caching.Core - person HashName; 23.12.2015

Отсутствующий метод, вероятно, означает, что в загруженной сборке нет метода. Можете ли вы убедиться, что в ваш проект добавлена ​​правильная сборка?

Убедитесь, что на компьютере также не установлен Windows AppFabric Server, так как он будет использовать GAC для кэширования dll, который будет выбран во время выполнения.

person Karthik R    schedule 12.06.2012

Для меня проблема заключалась в том, что я запускал свой проект с общего ресурса UNC (на самом деле он работал на виртуальной машине на моем macbook). Когда я запускал отладчик после установки флажка «Включить кэширование» в рабочей роли, он просто зависал. Приходите, чтобы узнать, примерно каждые 2 секунды он создавал файл дампа размером 160 МБ в C:\Windows\System32\%LOCALAPPDATA%\CrashDumps. После отладки одного из них я увидел, что первая ошибка была, когда он пытался запустить cmd.exe для кэширования в моей рабочей роли, и он сказал, что CMD не может быть запущен на сетевом ресурсе, поэтому по умолчанию он будет использовать windows/system32 или что-то.

Именно тогда я нашел эту удобную статью MS KB 7-летней давности: http://support.microsoft.com/kb/156276 Когда я добавил DisableUNCCheck REG_DWORD и установил значение 0 x 1 (Hex) в пути реестра HKEY_CURRENT_USER\Software\Microsoft\Command Processor, все запустилось как положено. Надеюсь, это поможет кому-то еще.

person Jorin    schedule 23.09.2013

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

Вы создаете новый проект или обновляете существующий проект? Попробуйте создать новый проект.

Также проверьте следующие журналы:

Прикрепленные файлы:

C:\Users\anan\AppData\Local\Temp\WEREA8F.tmp.WERInternalMetadata.xml 

Эти файлы могут быть доступны здесь:

C:\Users\anan\AppData\Local\Microsoft\Windows\WER\ReportArchive\AppCrash_cacheinstaller.e_1fbc3b72afb6acf93335ca8611850d289906c25_2ddaf529 
person Ming Xu - MSFT    schedule 11.06.2012
comment
Как я уже говорил, я также пытался создать совершенно новое решение, и оно было таким же. К сожалению, эти файлы не могут быть найдены. Я попытался найти их, когда заметил журналы в средстве просмотра событий. - person Andre Andersen; 11.06.2012