2010-11-18 11 views
0

Unsere Anwendung muss 800 Bilder innerhalb von 30 Sekunden herunterladen, aber selbst wenn wir die Zeit für 1 Minute erhöhen, kann unsere Anwendung immer noch nicht alle Bilder herunterladen.Downloadzeit reduzieren

Wie können wir die Download-Geschwindigkeit erhöhen? so dass wir 800 Bilder innerhalb von 30 Sekunden herunterladen können? Ist es möglich?

Könnte jemand bitte vorschlagen.

+4

die Größe der Bilder reduzieren? Kaufen Sie eine schnellere Internetverbindung? – Cascabel

+1

Nicht genügend Informationen. Mit welchem ​​Code werden die Bilder heruntergeladen? Welche Geschwindigkeit Netzwerkverbindung haben Sie? Wie groß ist die Gesamtgröße der Bilder? – jrockway

Antwort

1

Es gibt keine Möglichkeit, dies an Ihrem Ende zu tun. Sie benötigen eine schnellere Netzwerkverbindung oder die Bilder, die Sie herunterladen, müssen kleiner sein. (Wenn es möglich wäre, Downloads von der Seite des Benutzers zu beschleunigen, würde es in Online-Spielen niemals zu Verzögerungen kommen.)

+0

Kann ich als Anwendungsentwickler die Leistung meiner Netzwerkgeschwindigkeit verbessern? – teja1916

+0

vor allem, wenn sie in JPEG sind ... – khachik

+1

Nein. Netzwerke basieren sowohl auf Hardware als auch auf Software. Wenn Sie eine 10-Megabit-Verbindung haben, haben Sie eine 10-Megabit-Verbindung. – syrion

1

Sie können die Bilder in einer ZIP-Datei kombinieren.

5

Laden Sie die Bilder einzeln herunter und warten Sie, bis der erste fertig ist, bevor Sie den zweiten anfordern. Es könnte schneller abgeschlossen werden, wenn Sie mehrere Downloads parallel starten (aber nicht zu viele!).

3

Wenn die Geschwindigkeit nicht durch Ihre Internetverbindung physisch begrenzt ist, versuchen Sie mehrere Threads/Prozesse zu verwenden. So arbeiten Mass-Downloader.

1

Durch das parallele Herunterladen mehrerer Ressourcen kann die Downloadzeit erheblich verkürzt werden. fork kann für die parallele Ausführung verwendet werden.

Werfen Sie einen Blick auf Parallel::ForkManager, die Ihnen helfen wird, die Aufgabe leicht zu erreichen. Der Abschnitt BESCHREIBUNG im POD des Moduls enthält ein Beispiel für einen Downloader.

Basierend auf Ihrer Systemkonfiguration müssen Sie experimentieren, um die maximale Anzahl paralleler Prozesse zu ermitteln. Zu wenige oder zu viele Prozesse können die Leistung beeinträchtigen.

Faktoren, die die Leistung beeinflussen, sind:

  • CPU-Geschwindigkeit
  • CPU-Scheduler
  • Speicher
  • Netzwerkgeschwindigkeit
  • Netzüberlastung