2 votes

Suggestion pour la mise en cache de pages Web PHP la plus rapide pour plusieurs milliers de pages ?

Je cherche la meilleure solution pour mettre en cache des milliers de pages Web. Pour l'instant, j'utilise des fichiers plats, ce qui fonctionne très bien jusqu'à ce qu'il y ait plusieurs milliers de fichiers plats, puis l'ensemble du système de fichiers ralentit (beaucoup) lors de l'accès au cache des fichiers (fonctionne sur CentOS avec EXT3 sous OpenVZ). J'aimerais explorer d'autres options telles que Redis ou MongoDB comme substitut, mais seraient-elles plus rapides ? Et si non, quelle serait la meilleure suggestion ?

Mon système crée dynamiquement plus de 40K pages par site web, il n'est donc pas possible de faire un cache mémoire non plus.

Merci !

3voto

Tyler Eaves Points 5758

Un cache de fichier est bien, il faut juste être intelligent à ce sujet. Je m'efforcerais de limiter les répertoires à, disons, 500 entrées ou moins. Avec 40 000 entrées, le simple fait de hacher l'url et d'utiliser les 2 premiers octets du hachage vous donnera 255 dossiers, chacun devant contenir en moyenne ~150 fichiers.

0voto

Joshua Martell Points 5253

Avez-vous envisagé d'utiliser quelque chose comme Varnish ? En fonction de ce que vous mettez en cache et de la complexité de l'invalidation, cela pourrait vous convenir. Vous créeriez vos pages de manière dynamique et laisseriez la couche proxy gérer les demandes en double.

https://www.varnish-cache.org/

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X