2012-09-13 4 views
15

Je suis déchiré entre l'utilisation de Memcache et l'utilisation de Windows Azure Caching. Je n'ai pas d'expérience dans l'un d'eux, donc j'aimerais que quelqu'un vienne avec quelques facteurs décisifs:MemCache vs Azure Caching

  • prix
  • performances
  • facilité d'utilisation
  • quoi que ce soit

Répondre

37

Vous en fait besoin d'évaluer 3 options possibles:

  • Windows Azure Mise en cache partagée (anciennement Windows Azure AppFabric Caching)
  • Windows Azure Caching (Preview)
    • Utilise la mémoire libre de vos rôles (de sorte que vous n'avez pas besoin de payer quoi que ce soit supplémentaire pour utiliser)
    • Aucun quota (à l'exception de la mémoire disponible sur vos instances), pas d'étranglement, ...
    • Dédié à votre service cloud
    • Amélioration des performances sur Caching partagés (voir la fin de la page this)
    • support pour les grandes caches de plus de 100 Go
    • Prise en charge de protocole binaire memcache et texte s (donc les applications existantes qui sont basés sur memcached peuvent tirer parti de l'aperçu de la mise en cache)
    • Visual Studio support
  • Memcached
    • Can être utilisé dans Windows Azure
    • Utilise la mémoire de vos rôles, tout comme la mise en cache aperçu
    • Gratuit, tout comme l'aperçu de mise en cache
    • Aucun support Visual Studio
    • dédié, pas de quotas, le soutien pour les grands caches, ...

Je n'ai pas de points de repère, mais depuis Windows Azure Caching (Preview) et Memcached sont des solutions dédiées à l'aide de la mémoire vos rôles et prendre en charge le protocole memcached, vous pouvez simplement opter pour Windows Azure Caching (Preview) pour le support Visual Studio et .NET. Et une fois qu'il aura quitté l'aperçu, vous pourrez également obtenir de l'aide.

+0

Brillant, clair et exactement ce dont j'avais besoin. Avez-vous un lien vers lequel je peux me tenir à jour avec Windows Azure Caching Preview? – MaxWillmo

+0

Windows Azure Caching supprime également automatiquement le cache inutilisé comme Memcached? – MaxWillmo

+1

Je ne sais pas comment Memcached gère exactement le cache inutilisé, mais Azure Caching vous permet de travailler avec l'invalidation basée sur Time-out et l'invalidation basée sur la notification: http://msdn.microsoft.com/fr-fr/library/windowsazure /hh914130.aspx. Et je vous suggère de suivre le blog Windows Azure pour vous tenir au courant de l'aperçu de Caching et de tous les autres éléments d'Azure: http://blogs.msdn.com/b/windowsazure/ –

1

D'après ce que je peux dire, cache Azure est pas compatible avec 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] 

J'ai renoncé à essayer de le faire fonctionner. L'installation de memcached sur une machine virtuelle Azure Linux fonctionne très bien avec la latence 1ms38.