Manual:$wgPoolCounterConf/fr

Détails
Configuration pour le contrôle du pool de traitement, pour une utilisation dans les wikis à fort trafic.

Ce tableau de configuration associe les types de pool aux configurations des clients. Une configuration client est un tableau associatif avec une clé class'' donnant le nom de classe du client (qui devrait être une sous-classe de ), et tous les autres éléments qui sont passés au constructeur de classe. Le constructeur reçoit trois arguments : le tableau de configuration, le type pool et un nom de file d’attente. (Le type de pool est utilisé pour identifier le type de travail. Le nom de la file d’attente détermine les requêtes qui tentent de faire le même travail. Par exemple, le pool type pourrait être le rendu d’article, et le nom de la file d’attente l’ID de la révision qui est rendue.)

Une implémentation utilisant Redis (code>PoolCounterRedis/code>) est incluse avec MediaWiki, et une autre utilisant un démon C (code>PoolCounter_Client/code>) est disponible dans.



Types de pool
Types de pool qui peuvent être utilisés comme clés pour le tableau $wgPoolCounterConf. Plus de types peuvent être offerts par des extensions:


 * ArticleView
 * Lors du rendu du contenu d’une page qui n’est pas dans le cache de l’analyseur (y compris les anciennes versions d’une page).


 * GetLocalFileCopy
 * Lors de la récupération d’un fichier de plus de 10 Mo vers le chemin local pour thumbnailing.


 * diff
 * Lors du rendu d’un diff, si la taille de l’ancien et du nouveau texte est supérieure à 20000 caractères.


 * FileRenderExpensive
 * Lorsque la génération de la vignette d'un fichier est jugée trop coûteuse. The consideration of expensive depends on the file type and image or media dimensions. Only applies to thumbnails rendered directly from thumb.php.


 * FileRender
 * Lors de la génération de la vignette d'un fichier. Ne s'applique qu'aux vignettes générées directement à partir de thumb.php.


 * ApiParser
 * When parsing wikitext through the api.


 * SpecialContributions
 * When rendering Special:Contributions.



Options de configuration partagées par tous les clients

 * timeout
 * Délai d’attente en secondes.


 * workers
 * Nombre maximum de threads actifs dans chaque pool. D’autres travailleurs attendront qu’une place soit libérée.


 * maxqueue
 * Nombre maximum de threads totaux dans chaque pool. (Si ce nombre de travailleurs est déjà au travail/en attente, échouer au lieu d’attendre)


 * slots
 * Nombre maximal de travailleurs travaillant sur ce type de tâche, peu importe le nom de la file d’attente. 0 signifie illimité. La valeur maximale autorisée est 65536. La façon dont la limite de logement est appliquée est trop zélée - cette option devrait être utilisée avec prudence.



Options de configuration supplémentaires pour l’implémentation de Redis

 * servers
 * Liste des adresses de serveur Redis.


 * redisConfig
 * Tableau de configuration supplémentaire pour.

Utilisation
Pour utiliser PoolCounter, sous-classe la classe  > qui peut implémenter des fonctionnalités arbitraires avec des fonctions anonymes). Trois méthodes/rappels peuvent être mis en œuvre:


 * doWork
 * appelé lorsque le worker est le premier à travailler sur la tâche donnée (également lorsque le serveur PoolCounter est en panne). Renvoie le résultat du travail.


 * getCachedWork
 * called when the worker had to wait on another worker and that worker has finished. Can be used to get a result that has been cached by doWork. If not implemented or returns false, doWork will be called.


 * fallback
 * called on wait timeout or when there are too many workers waiting already. Can be used to return some not so good but cheap result (e.g. showing a cached older revision instead of rendering the new one). If not implemented or returns false, error will be called.


 * error
 * Peut être utilisé pour montrer une erreur.

Exemple
Exemple de configurationː

Exemple d’utilisation de PoolCounter:

Example using redis



Voir aussi

 * PoolCounter
 * == Configuration de Wikimedia ==
 * PoolCounter
 * == Configuration de Wikimedia ==