Maison >développement back-end >tutoriel php >Comment désactiver la mise en mémoire tampon de sortie en PHP pour le streaming de données en temps réel ?

Comment désactiver la mise en mémoire tampon de sortie en PHP pour le streaming de données en temps réel ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-30 11:51:031035parcourir

How to Disable Output Buffering in PHP for Real-time Data Streaming?

Désactivation de la mise en mémoire tampon de sortie en PHP

Le problème

Le comportement par défaut de PHP implique la mise en mémoire tampon de la sortie, entraînant un retard dans l'affichage des données en temps réel pour les applications qui diffusent des données, telles que les flux de caméras Web. Cet article explore les méthodes permettant de désactiver la mise en mémoire tampon de sortie afin de garantir un flux de données fluide.

Désactivation de la mise en mémoire tampon de sortie

Tampon de sortie de l'espace utilisateur

Le tampon de sortie de l'espace utilisateur de PHP peut être désactivé globalement en :

  • Réglage de output_buffering sur Off dans php.ini.
  • Ajout de php_flag "output_buffering" Off à la configuration Apache.

Pour les scripts individuels, désactivez la mise en mémoire tampon de sortie avec ob_end_clean() ou ob_end_flush.

Tampon de sortie au niveau du serveur

De plus, désactivez le tampon de sortie au niveau du serveur par :

  • Appel de ob_implicit_flush() au démarrage du script.
  • Utilisation de flush() après chaque instruction de sortie.

Approche recommandée

Pour obtenir une livraison de sortie optimale, il est recommandé de désactiver les tampons de sortie de l'espace utilisateur et du serveur. En suivant les étapes décrites ci-dessus, les flux de données en temps réel peuvent être affichés sans délai de mise en mémoire tampon.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn