Le plus intéressé par les solutions peer-to-peer - sans serveur central. Donc, je l'imagine comme une bibliothèque qui apporte à mon application une fonctionnalité de gestion de cache transparente avec fonctionnalité de synchronisation d'instances distantes. Il devrait supporter le timeout d'enregistrement de cache et forcer l'invalidation. MISE À JOUR: Si ce n'est pas complètement d'égal à égal - au moins avec la fonction de plusieurs serveurs.Existe-t-il des solutions de mise en cache distribuées matures disponibles pour C++ en plus de memcached?
2
A
Répondre
1
La meilleure chose après Memcached est Redis:
(+) il prend en charge plusieurs types de données;
(+) a un stockage persistant; (0) ne possède pas de 'vraies' liaisons C++ (possède cependant 2 bibliothèques client C).
La mise en cache d'égal à égal serait possible mais * vraiment * inefficace. Il y aurait beaucoup de trafic réseau inutile, de duplication de données, de réponses redondantes, etc. Il suffit de regarder Freenet. –
@Zan C'est exactement ce que les DHT (au moins ceux qui utilisent un hachage cohérent) ont été conçus: récupérer efficacement les données stockées de manière distribuée. –
@Eugen: Et DHT ne sont pas efficaces. Ils sont bons dans ce qu'ils font, mais ils ne peuvent pas rivaliser avec une solution de serveur unique si la charge de données correspond à un seul serveur. –