Vi espongo brevemente il mio problema: ho un flusso continuo di dati sulla porta 10000 del server. Devo leggere costamente da questa porta e visulizzare il dato che leggo (una serie di numeri) in un livello di testo. Allo scopo ho preparato 2 pagine, questa è quella che effettua la lettura dei dati:
Codice PHP:
$fp = pfsockopen($_SERVER['HTTP_HOST'], '8888', $errno, $errstr, 5);
if (!$fp) die("errore di connessione");
else {
fwrite($fp,"\n");
echo fgets ($fp,128);
}
La lettura viene fatta correttamente.
Nell'altra pagina recupero questo output tramite una funzione ajax che ogni 500 millisecondi va ad aggiornare un livello di testo. Funziona, però ci sono un po' di problemi legati all'apertura delle porte. Ogni volta che vado a fare una lettura, viene aperta una nuova porta (e chiusa subito dopo); dopo un minuto mi ritrovo con una infinità di porte che sono state aperte e chiuse (quindi una ogni 500 millisecondi). In una situazioni di molti utenti collegati, quali problemi potrei avere? Non esiste un modo per utilizzare un'unica porta per gestire il flusso dei dati? Pensavo che pfsockopen, in quanto apre una connessione persistente, mantenesse aperta una singola porta. Avete suggerimenti?