wrapper.javaio.use_thread

Compatibilité :3.5.21
Éditions :Édition ProfessionnelleÉdition StandardÉdition Community
Plateformes :WindowsMac OSXLinuxAlpine LinuxFreeBSDSolarisIBM z/Linux

Cette propriété contrôle si le Wrapper utilise un thread dédié pour traiter la sortie console de la JVM. Traditionnellement, toute cette sortie était traitée dans le thread principal du Wrapper. Cependant, sur des serveurs fortement chargés en E/S, cela peut provoquer le blocage du thread principal pendant que la sortie des journaux est écrite sur le disque.

Sauf si le niveau de journalisation DEBUG du Wrapper a été défini, la boucle principale n'effectue pas beaucoup de journalisation autre que la sortie console de la JVM ; déplacer cette sortie dans un autre thread peut donc aider à garantir que le thread principal du Wrapper puisse toujours s'exécuter sans aucun délai.

Le thread dédié permet également au Wrapper de traiter la sortie Java en attente avec beaucoup moins de délai.

Si le tampon du pipe entre la JVM et le Wrapper devient plein, la JVM se bloquera jusqu'à ce que le Wrapper ait l'occasion de traiter la sortie console en attente. Si votre application journalise des lignes très longues ou de très grandes quantités de sortie, vous pourriez bénéficier d'une augmentation de la taille par défaut du tampon du pipe. Consultez la propriété wrapper.javaio.buffer_size pour plus d'informations.

Notez qu'il y a beaucoup de surcharge système pour afficher la sortie des journaux de la console. C'est particulièrement vrai sous Windows. Si votre application rencontre des problèmes de performances lors de la journalisation de grandes quantités de sortie console, nous recommandons soit de réduire la sortie des journaux, soit de désactiver la sortie des journaux de la console en définissant la propriété wrapper.console.loglevel sur STATUS.

Les inconvénients de l'utilisation d'un thread dédié sont :

  • Des besoins légèrement plus élevés en mémoire et en ressources.
  • La sortie des journaux de débogage, en particulier au démarrage, peut être un peu plus difficile à lire car les entrées journalisées par les deux threads ne sont pas bien synchronisées.

La valeur par défaut est « FALSE » car la plupart des utilisateurs n'ont pas besoin du thread dédié.

Exemple :
wrapper.javaio.use_thread=FALSE

NOTE

Cette propriété remplace la propriété obsolète wrapper.use_javaio_thread (qui existait depuis la version 3.5.8 du Wrapper). La valeur de la propriété obsolète est la valeur par défaut de celle-ci pour la compatibilité ascendante.

Référence : Console

Référence : Fichier de commandes