Optimisations asynchrones

Vue d'ensemble

WP Rocket utilise une approche asynchrone pour appliquer certaines de ces optimisations. Actuellement, Supprimer les ressources CSS inutilisées est la seule option appliquée de manière asynchrone.

En général, une optimisation asynchrone fonctionne comme ci-dessous :

  1. Envoi des informations à l'API
  2. Vérification du statut
  3. Application de l'optimisation
  4. Réessai, si nécessaire

Attention ! Il s'agit d'un article de niveau avancé consacré à la documentation approfondie de l'approche asynchrone.

Notes techniques pour l'approche asynchrone

  • La base de données stockera un élément pour chaque demande d'optimisation.
  • Les éléments ont quatre statuts : en attente, en cours, réussi et échoué.
  • Toutes les minutes, WP Rocket vérifie les éléments en attente. Ces vérifications s'appuient sur cron.
  • Pour chaque élément, une requête sera envoyée.
  • Si la réponse à la requête est positive, l'optimisation est terminée, sinon, un message d'erreur sera enregistré.
  • Une fois l'optimisation terminée, le statut de l'élément sera mis à jour dans la base de données et la mémoire cache de l'URL spécifique sera purgée.
  • Si la réponse à la requête n'aboutit pas, deux autres tentatives seront effectuées. Il y a un maximum de 3 tentatives.
  • Si la réponse à la requête échoue après les 3 tentatives, l'état de l'élément sera maintenu en échec et sera traité après avoir effacé le CSS utilisé de cette entrée (ou de toutes les entrées CSS utilisées).

Exigences des fonctionnalités

WP Cron est très important pour cette approche de WP Rocket, veuillez consulter cet article pour plus d'informations. 

Approche asynchrone pour la Suppression des CSS inutilisés

Supprimer les CSS inutilisés utilise les étapes spécifiques suivantes :

  1. Envoi d'informations à l'API : Le plugin envoie des informations de votre site Web à une API dans le serveur de WP Rocket lorsqu'une page est visitée ou préchargée. 
  2. Vérification de l'état : Après une minute, le cron de WP Rocket appellera l'API externe pour demander le statut. 
  3. Application de l'optimisation : Si la ressource optimisée est prête, elle sera appliquée au site. 
  4. Nouvelle tentative : Si le CSS utilisé n'est pas disponible, il sera traité lors du prochain lot. En 3 tentatives maximum.

Notes techniques pour l'approche asynchrone de la suppression des CSS inutilisés

  • Une page est mise en cache suite à une visite ou au préchargement.

Filtres disponibles pour Supprimer les CSS inutilisés

Vous pouvez utiliser le filtre suivant pour définir une taille de lot différente :

rocket_rucss_pending_jobs_cron_rows_count

  • La valeur par défaut est de 100 URLs.
  • En augmentant la fréquence, les requêtes en attente seront traitées plus rapidement et l'optimisation sera terminée plus rapidement.
  • En diminuant la fréquence, le traitement des demandes en attente sera plus lent, ce qui réduira toute surcharge éventuelle du serveur.

Et, vous pouvez utiliser ce filtre pour modifier l'intervalle des exécutions cron :

rocket_rucss_pending_jobs_cron_interval

  • La valeur par défaut est de 60 secondes.
  • En augmentant la fréquence, les requêtes en attente seront traitées plus rapidement et l'optimisation sera terminée plus rapidement.
  • En diminuant la fréquence, le traitement des requêtes en attente sera plus lent, ce qui réduira toute surcharge éventuelle du serveur.
Cela a-t-il répondu à votre question ? Merci pour votre retour :) Une erreur est survenue lors de l’envoi de votre retour. Veuillez réessayer plus tard.