Question

J'ai une application Php qui utilise stream_socket_client () pour obtenir des données via TCP d'un serveur principal, mais souhaite que les connexions restent actives ou même meilleures dans un pool afin d'éviter la connexion / déconnexion directe.

Mais je ne suis pas un gourou de Php, je ne sais donc pas comment faire cela. Et bien que je puisse probablement le comprendre en quelques heures, mon temps sera probablement mieux dépensé dans le cerveau de tout le monde, alors un conseil?

Était-ce utile?

La solution

La définition de l'indicateur STREAM_CLIENT_PERSISTENT lors de la création du flux empêche la connexion de rester inactive. En interne, l'indicateur passe stream_socket_client () à pfsockopen () ( doc ) au lieu de fsockopen () ( doc ).

La persistance de la connexion est limitée au processus de serveur sur lequel la connexion a été ouverte. Lorsque votre script se termine et que vous l'appelez à nouveau, rien ne garantit que le même processus traite votre demande: une autre connexion sera ouverte dans ce cas. Mettre la connexion dans $ _SESSION pour le partager ne fonctionnera pas.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top