Das ist eine ziemlich lange Frage, also nimm sie mit.
Ich wollte meinen über eine AWS-Instanz angemeldeten Akamai-Server betonen. Also habe ich angefangen, ab Benchmark zu laufen. Allerdings schienen sie unglaublich schnell zu sein, um ~ 3 MB Videodateien herunterzuladen. Natürlich wollte ich sehen, was los ist. Dies ist, was ich getan habe, um die Datei zu erhalten
curl -v -o / dev / null
Das obige ist in ~ 5 Sekunden erledigt.
Als Nächstes habe ich denselben Befehl erneut ausgeführt. Dieses Mal war es in ~ 200ms fertig! Natürlich sagt meine Intuition, dass die Datei irgendwo zwischengespeichert wird.
Meine Fragen:
- Curl-Cache-Dateien? Wenn ja, gibt es eine Möglichkeit, dies zu ignorieren?
- Wenn Curl es nicht tut, abstrahiert das Ubuntu einen Cache unter Curl? Wenn ja, gibt es eine Möglichkeit, dies zu ignorieren?
- Glauben Sie, dass es in Anbetracht der Anforderungen neben ab ein Benchmarking-Tool geben könnte, das diesen Zweck erfüllen könnte?
Vielen Dank, Akshay
Versuchen Sie verspätet:
Dadurch wird der Webserver angewiesen, nicht zwischenzuspeichern. Stoppt Ebenen unter dem Caching nur, wenn sie so codiert sind, dass sie den Kopfzeilen entsprechen.
quelle
Ich habe diesen Curl-Befehl mit einem Cache-Buster-Parameter verwendet.
curl http://example.com/static/changing_file?_=$(date +%s)
date +%s
Gibt die Sekunden seit der Epoche aus, wenn Sie die URL mehr als einmal in der Sekunde aufrufen unddate +%s.%N
zum Hinzufügen von Nanosekunden verwenden.quelle
Sie können mithilfe der Umgebungsvariablen eine zufällige Abfragezeichenfolge hinzufügen
$RANDOM
:Dies funktionierte für mich auf Github Raw-Dateien.
quelle
Möglicherweise zwischenspeichert Ihr DNS die Auflösung des Namens und dies ist der Grund für die unterschiedliche Reaktionszeit.
Es ist nur eine Theorie.
quelle