Есть ли проблемы с использованием Syscache в многосерверной среде в качестве кеша второго уровня nhibernate?

Я только что перешел из среды с одним веб-сервером в среду с несколькими веб-серверами, и в прошлом я использовал nhibernate и кеш второго уровня syscache.

Я знаю, что мне нужно перейти на распределенное решение для кэширования 2-го уровня nhibernate (memcache, скорость и т. Д.), Но (по ряду причин) для этого перехода потребуется немного времени.

Есть ли что-то особенное, о чем мне нужно беспокоиться в моем текущем состоянии (об использовании кеша Syscache уровня 2 в среде с несколькими веб-серверами), или это просто не будет таким производительным, как распределенное решение (учитывая, что я, по сути, буду иметь локальные параллельные кеши на каждом веб-сервере по сравнению с централизованным кешем на серверах).

Я в основном пытаюсь выяснить, есть ли у этого проблемы с этой настройкой или это не так быстро, как могло бы быть.


person leora    schedule 06.07.2011    source источник


Ответы (1)


В среде веб-фермы рекомендуется использовать распределенный кеш, иначе каждый веб-сервер будет иметь свою собственную копию кеша, что может быть менее эффективным. Syscache использует поставщик кэша ASP.NET по умолчанию, поэтому он будет работать так же быстро, как этот кеш ASP.NET по умолчанию. По умолчанию он хранится в памяти каждого веб-сервера.

Таким образом, SysCache, использующий кэш ASP.NET по умолчанию, будет работать в среде веб-фермы, но не будет столь же эффективным, если вы используете распределенный кеш.

person Darin Dimitrov    schedule 06.07.2011
comment
что, если я сделаю обновление или вставку с одного веб-сервера в БД. как уведомляется кеш 2-го уровня на другом веб-сервере? - person leora; 06.07.2011
comment
@ooo, с нераспределенным кешем другой сервер просто не получает уведомления. В распределенном кэше используется специальная хеш-функция, чтобы вычислить, на каком сервере хранится соответствующий элемент. - person Darin Dimitrov; 07.07.2011
comment
если он не получает уведомления, может ли это привести к тому, что другой сервер попытается обновить устаревшие данные? - person leora; 07.07.2011
comment
что вы думаете о моем последнем комментарии? - person leora; 31.03.2012
comment
Мои мысли вы правы. Думаю, Дарин не знал ответа. Вы когда-нибудь получали какие-либо тесты или результаты по этому поводу? - person David C; 21.08.2013