web-dev-qa-db-fra.com

WooCommerce avec des milliers de produits - le site est très lent - optimiser les requêtes de base de données?

Jusqu'à présent, il y a environ 8 000 produits dans mon WooCommerce et le chargement de la page du produit sur le terminal prend plusieurs secondes, même après la mise en cache.

Mon hôte VPS dit que je devrais avoir plusieurs bases de données.
Est-ce la bonne méthode et si oui, comment est-ce possible?

Toute suggestion sur l'accélération de mes requêtes de base de données ou tout simplement sur l'accélération du front-end serait géniale.

3
Stephen

C'est vraiment une question de serveur et pas particulièrement Wordpress.

Vous rencontrez un goulot d'étranglement lié à la vitesse du serveur MySQL à 1and1. Désolé, mais ils sont bien connus en tant qu'hôte partagé lent, et pour cette raison, je doute que leurs VPS soient meilleurs.

La mise en cache et un CDN ne feront que beaucoup pour vous. Vous avez besoin de plus de ressources sous la forme d’un serveur MySQL plus performant et plus rapide, et si vous payez déjà pour un VPS, passez à un meilleur hôte VPS, comme Media Temple.

Une fois là-bas, avec un accès root, vous pouvez utiliser un utilitaire tel que http://mysqltuner.com pour vous connecter et analyser les performances du serveur MySQL et ajuster les paramètres de mémoire du serveur et de cache de requête de base de données dans le fichier de configuration my. cnf. Vous pourrez également ajuster Apache - dans httpd.conf - pour gérer des charges élevées.

Il est inutile d'essayer d'optimiser les requêtes de base de données effectuées par Woo Commerce ou Wordpress. toutes les modifications apportées devront être effectuées à nouveau après les mises à jour.

1
markratledge

La mise en cache avec Varnish est la meilleure solution. Toutefois, vous devez éviter de mettre en cache l'extrait de panier d'en-tête et les pages de panier/paiement. Je pense que WooCommerce devrait être configuré avec Varnish Edge Side Includes. Pour exclure le paiement, suivez ces instructions:

http://docs.woothemes.com/document/configuring-caching-plugins/#section-3

0
retroriff

J'ai deux solutions que je suggérerais qui devrait résoudre votre problème. Adressez-vous à elasticsearch.com pour renseigner tous les index de produits. Dans le même temps, vous améliorez considérablement les fonctionnalités de recherche de votre site Web (si elles sont correctement intégrées). Je veillerais à placer la solution elasticsearch sur un serveur différent.

Mes pensées sont que votre système de cache n'est pas configuré correctement ou votre serveur est surchargé. Une solution qui pourrait être la moins chère (option n ° 2) serait d’utiliser les serveurs de mise en cache gratuits de cloudflare.com. Cela résoudra généralement votre problème de la manière la plus rentable si vous ne voulez pas vous occuper des optimisations de serveur.

0
NetConstructor.com