2010-08-08 7 views
2

Ceci est un peu une question bizarre. Je suis conscient de l'utilisation de memcached pour mettre en cache des données "lues" en mémoire, mais est-il possible d'en faire de même pour les écritures? Par exemple: Vous avez un morceau de données en mémoire (dans Memcached) et si vous devez apporter des modifications à ces données, vous le faites dans la mémoire elle-même. À la fin d'une certaine période (heure ou jour), vous répliquez toutes ces modifications dans MySQL. Vous utilisez donc des éléments de stockage en mémoire plutôt qu'en disque, et à la fin de la période, ces changements deviennent permanents lorsqu'ils sont copiés sur MySQL.Stockage des écritures MySQL en mémoire

Y a-t-il un logiciel qui peut accomplir cela? Exemple de code peut-être?

+0

Avez-vous un problème de performance en écriture? Et avez-vous optimisé votre serveur db pour de meilleures performances d'écriture? Les configurations par défaut ont l'habitude de ne pas être parfaites ... –

+0

Ouais c'est optimisé pour l'écriture, et j'ai aussi de meilleurs HD. Cependant, je voulais étudier cette solution comme un scénario alternatif. – Rushi

Répondre

0

oui, il peut être ainsi réduire la surcharge des E/S.

Je crois que ce que vous avez décrit est un scénario «écriture différée» pour les données de cache. La mise en œuvre peut être effectuée avec la création de files d'attente de tâches et de travailleurs d'installation pour faire le travail.

+0

Existe-t-il un logiciel capable de l'implémenter de manière native? – Rushi

+0

Je ne sais pas s'il existe des logiciels qui le font nativement, s'il vous plaît laissez-moi savoir si vous en trouvez un: D Cependant, cela peut être facilement fait avec des scripts, mais n'utilisez pas cette technologie pour les données critiques –

1

Impossible pour les données critiques, car memcache ne garantit pas la cohérence des données.

Bien que vous puissiez utiliser un tel comportement pour les données de session et qu'aucun logiciel spécial ne soit nécessaire. Récupérez simplement vos données, modifiez-les et sauvegardez.

0

Peut-être que MySQL Proxy peut être utile pour vous? Je ne l'ai pas essayé donc je ne sais pas qu'il fait ce que vous exigez.

Questions connexes