NHibernate Azure AppFabric Cache - PullRequest
5 голосов
/ 03 мая 2011

Кто-нибудь пытался использовать поставщик кэша NHibernate Velocity L2 против Azure AppFabric Cache?Если так, что вы обнаружили?

В дополнение к этому мы используем SQL Azure для хранения наших данных.

Ответы [ 3 ]

2 голосов
/ 18 июня 2012

Вам должен помочь последний выпуск «Кэширование Windows Azure (Preview)» - http://social.msdn.microsoft.com/Forums/en-US/windowsazuredata/thread/9a2dbd9f-1b9d-4249-a48b-216d9dfdc2bc

У вас есть поддержка уведомлений, улучшенные задержки, большая гибкость и цены только на основе стоимости вычислений виртуальных машин, с которыми вы конфигурируете.

1 голос
/ 18 декабря 2011

Наш сценарий использования для кэширования приведен ниже:

  1. Мы хотим ускорить работу нашего веб-приложения за счет кэширования часто используемых данных SQL Azure.
  2. Кэш должен быть включен простым редактированием конфигурации NHibernate (как и любой другой кэш NHibernate L2).
  3. Когда выполняется обновление одного из этих объектов в экземпляре роли Azure, это изменение должно немедленно распространяться на другие экземпляры Azure.
  4. Мы хотели бы избежать хлопот, связанных с настройкой и управлением чем-то вроде memcached.

К сожалению, текущее состояние Azure AppFabric Cache не соответствует нашим потребностям. И вот почему:

После настройки провайдера NHibernate Velocity мы смогли кешировать объекты в распределенном кеше, но была небольшая задержка (~ 1 секунда) при доступе к каждому объекту. Поскольку мы пытались получить доступ к сотням кэшированных объектов на каждый веб-запрос, каждый HTTP-запрос был на самом деле медленнее, чем если бы мы обращались к БД напрямую - конечно, не то, что мы искали.

Мы попытались решить эту проблему, включив локальный кэш AppFabric. Производительность была значительно улучшена, но это подняло еще одну проблему. Как только объект сохранен в локальном кэше, он будет оставаться там до истечения срока его действия (вы можете установить временной интервал истечения для кэша). На данный момент нет большой разницы между локальным кешем AppFabric и провайдером NHibernate SysCache (который использует кэш ASP.NET), за исключением того, что вам приходится доплачивать за кеш AppFabric.

Если бы локальный кэш Azure AppFabric поддерживал такие уведомления, как двоюродный брат Windows Server AppFabric , мы бы с радостью использовали кэш Azure. Пожалуйста, проголосуйте за эту функцию на www.mygreatwindowsazureidea.com .

Для справки сотрудник опубликовал вопрос на форумах Azure относительно использования локального кэша AppFabric.

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

1 голос
/ 08 декабря 2011

После этого сообщения: AppFabric: не удалось связаться со службой кэша Я обнаружил, что Azure AppFabric Cache не поддерживает области кэша, поэтому поставщик NHibernate Velocity, измененный в соответствии с этим сообщением, не может работать в любом случае , Я буду продолжать пытаться справиться с этим ограничением.

...