Siechfred: Socket auslesen und Datenverarbeitung

Beitrag lesen

Tag opi.

while (<$socket>) {
   # [1] Antwort bearbeiten
}
Wäre es also ratsamer, die Daten zunächst in ein Array oder einen
Hash zu packen oder kann ich sie auch sofort verarbeiten und
wegschreiben?

Das ist m.E. eine Frage der Geschwindigkeit und des verfügbaren Speichers. Natürlich könntest du dir eine Datenstruktur anlegen, die zunächst die erhaltenen Daten speichert, die Verbindung wieder beendet und dann die Verbindung zum nächsten Server aufbaut usw., nach Abrufen aller Verbindungen würdest du dann diese Datenstruktur im nächsten Schritt auswerten. Und diese Struktur kann halt einen ziemlich großen Umfang annehmen, was möglicherweise zu Lasten des Speichers geht. Du kannst natürlich auch gleich die Daten in einer while-Schleife verarbeiten. Letztendlich ist es eine Frage der Performance des Scripts, das müsstest du halt testen. Die Verbindungsdauer jedenfalls dürfte nur geringfügig variieren, egal, ob du die Daten zwischenspeicherst (was m.E. die schnellere Variante wäre) oder "on the fly" auswertest. Eventuell wäre ein Mittelweg in der Form gangbar, dass du in der while-Schleife die Daten auswertest und das *Ergebnis* in einer Datenstruktur ablegst, die dann später ausgewertet wird (E-Mails versenden u.ä.).

Siechfred