Кэш-память MemCache против Azure

Я разрывается между использованием Memcache и использованием кэширования Windows Azure. У меня нет опыта ни в одном из них, поэтому я хотел бы, чтобы кто-то придумал некоторые решающие факторы:

  • цена
  • производительности
  • простота использования
  • что-нибудь

Ответы

Ответ 1

Вам действительно нужно оценить 3 возможных варианта:

  • Совместное кэширование Windows Azure (ранее кэширование приложений Windows Azure AppFabric)
    • Управляемый, многопользовательский общий кэш
    • Не бесплатный (довольно дорогой на самом деле)
    • Квоты применяются с точки зрения размера кэша, транзакций в час, пропускной способности в час, одновременных соединений.
    • Медленнее кэширования Windows Azure (предварительный просмотр)
    • Может произойти дросселирование
    • FAQ: http://msdn.microsoft.com/en-us/library/windowsazure/hh697522
  • Кэш-память Windows Azure (предварительный просмотр)
    • Использует свободную память ваших ролей (так что вам не нужно платить ничего лишнего, чтобы использовать это)
    • Нет квот (кроме памяти, доступной на ваших экземплярах), без дросселирования,...
    • Посвящается вашему облачному сервису
    • Улучшена производительность по сравнению с общим кэшированием (см. конец этой страницы)
    • Поддержка больших кешей более 100 ГБ
    • Поддержка бинарных и текстовых протоколов memcache (поэтому существующие приложения, которые основанный на memcached, может использовать предварительный просмотр кэширования)
    • Поддержка Visual Studio
  • Memcached
    • Может использоваться в Windows Azure
    • Использует память ваших ролей, точно так же, как предварительный просмотр кэширования
    • Бесплатно, так же, как предварительный просмотр кэширования
    • Поддержка Visual Studio
    • Посвящается, нет квот, поддержка больших кешей,...

У меня нет тестов, но поскольку оба кэширования Windows Azure (Preview) и Memcached являются выделенными решениями с использованием памяти на ваших ролях и поддерживают протокол memcached, вы можете просто перейти к кешированию Windows Azure (Preview) для поддержка Visual Studio и .NET. И как только он покинет предварительный просмотр, вы также сможете получить поддержку.

Ответ 2

Из того, что я могу сказать, кеш Azure несовместим с memcache:

[email protected]**:~# memccapable -h **.cache.windows.net -p 22233 -t 1 -b
binary noop                             Errno: 110 Connection timed out [FAIL]
binary quit                             Errno: 110 Connection timed out [FAIL]
binary quitq                            [FAIL]
binary set                              Errno: 104 Connection reset by peer [FAIL]
binary setq                             Errno: 104 Connection reset by peer [FAIL]
binary flush                            Errno: 104 Connection reset by peer [FAIL]
binary flushq                           Errno: 104 Connection reset by peer [FAIL]

Я сдался, пытаясь заставить его работать. Установка memcached на Linux Azure VM отлично работает < 1 мс.