2009-10-22 4 views
2

Je dois vérifier des centaines d'URL et d'utiliser stream_socket_client de créer des connecteurs pour chacun puis stream_select pour les récupérer et d'évaluer leur temps de réponse etc ...Nombre maximum de prises pour PHP stream_socket_client

Cependant, après 237 créé sockets je ne parviens pas à créer plus de sockets il n'y a pas de code d'erreur ou un message indiquant que le problème se produit avant "se connecter". J'ai essayé d'exécuter ceci contre différents serveurs et j'obtiens le même résultat donc probablement pas d'étranglement de leur côté.

Y a-t-il un nombre maximum de sockets pouvant être ouverts à tout moment ou que se passe-t-il ici?

Répondre

1

Il s'agit de la limite de fichiers ouverts localement. Vérifiez la sortie de ulimit -n si vous êtes sous Unix. Facteur dans les fichiers standard comme stdin/out/err et tous les fichiers ouverts par l'interpréteur PHP.

+0

Merci! Il a été réglé à 256, ce qui est parfaitement logique. Je l'ai résolu en lançant des groupes de 100 sockets à la fois. Ce sera aussi plus doux pour le récepteur;). –

Questions connexes