Решение для распределенного кэша/сеанса для веб-приложения ASP.NET

Я ищу распределенное решение Cache/Session, ниже то, что я нашел. Я надеюсь, что кто-нибудь может поделиться информацией о плюсах и минусах его использования:

  1. NCache

  2. Windows Server AppFabric

  3. MemCached в соответствии с рекомендациями @TFD

Я использую ASP.NET 4 и SQL Server 2008.

Любая идея будет очень признательна!


person Pingpong    schedule 22.05.2011    source источник
comment
Не могли бы вы поделиться, какой из них вы используете, и какова ваша оценка?   -  person Mohamed Ramadan    schedule 28.08.2013


Ответы (4)


Вы также можете взглянуть на Redis (http://redis.io/), который, по слухам, очень хорошо взаимодействует с приложениями .NET благодаря клиенту с открытым исходным кодом, написанному на C#: http://code.google.com/p/servicestack/wiki/ServiceStackRedis.

person sgvirtzman    schedule 03.02.2012

Попробуйте Dache — решение для распределенного кэширования .NET с открытым исходным кодом, обладающее высокой производительностью. http://www.getdache.net

person Haney    schedule 23.10.2013

Используйте memcached, это бесплатно, хорошо работает, работает на дешевых коробках *nix, хорошо себя зарекомендовало.

Memcached можно запустить в Windows для тестирования и т. д.

Различные клиентские библиотеки для .Net на memcached/wiki/Clients.

И готовый поставщик сеансов и кэшей, если вам не хочется делать это самостоятельно.


Если вы не знакомы с ОС в стиле *nix, загрузите образ сервера Ubuntu и запишите на диск . Вставьте диск в пустую машину с большим количеством оперативной памяти и следуйте инструкциям по умолчанию, пока не закончите (~ 30 минут).

Затем в командной строке введите «apt-get install memcached».

Перезагрузитесь, чтобы убедиться, что он запускается, и все в порядке, и все готово.

person TFD    schedule 22.05.2011
comment
Спасибо за ваш совет. Вы сказали: Memcached можно запускать в Windows для тестирования и т. д. Разве это не годится для производства с использованием Windows? Можно ли установить его на той же машине, что и машина для разработки, для целей разработки? - person Pingpong; 22.05.2011
comment
@Pingpong Вы можете запускать несколько экземпляров на одном компьютере в качестве службы для разработки и тестирования, или вы также можете запускать на виртуальной машине. Он отлично работает в Windows. Для продакшна у вас будет две или более отдельных (в основном, возможно, также squid или лак) выделенных машин (иначе зачем вы с этим возитесь?), так что вы можете использовать *nix и экономить ресурсы - person TFD; 23.05.2011
comment
Спасибо за ваш совет. Я рассмотрю ваше предложение. - person Pingpong; 24.05.2011

Попробуйте использовать NCache, так как он является одним из пионеров в области распределенного кэширования. Широкий спектр топологий кэширования, предлагаемых NCache, наряду с другими его функциями делает его, вероятно, лучшим поставщиком кэш-памяти на рынке. NCache — это распределенный кэш корпоративного уровня для .NET и Java, а также обеспечивает быстрое и надежное хранилище для сеансов ASP.NET и JSP. Что касается сравнения NCache с его конкурентами, пожалуйста, посмотрите это видео,

Сравнение функций NCache и AppFabric

person Ravian    schedule 02.08.2012