Alat Linux sederhana untuk menghitung waktu permintaan http dalam milidetik

12

Saya mencari alat sederhana atau perintah bawaan yang akan memungkinkan saya mengukur dengan akurasi milidetik waktu yang diperlukan untuk mengambil halaman web jarak jauh dari URL yang diberikan.

GJ.
sumber

Jawaban:

12

Apakah ini melakukan apa yang Anda cari?

time wget http://example.com
Dijeda sampai pemberitahuan lebih lanjut.
sumber
Ini akan mencakup waktu yang diperlukan untuk memulai dan menjalankan wget, yang dapat secara signifikan lebih lama dari waktu respons server.
Paul Lynch
@ PaulLynch: Saya melakukan tes sederhana. Saya menjalankan ini di satu terminal: rm foo; touch foo; python -m SimpleHTTPServerdan di terminal lain: time wget --quiet --output-document=/dev/null localhost:8000/foodan hasilnya adalah 2 milidetik. Saya menjalankan hal yang sama wgetterhadap google.com (yang mengambil sekitar 10 ribu karakter) dan mendapat sekitar seperempat detik. Jadi mari kita sebut waktu mulai / jalankan sekitar 1% dalam kasus itu. Kemudian, untuk perbandingan, saya lakukan time curl file://foodan mendapat sekitar 4 milidetik.
Dijeda sampai pemberitahuan lebih lanjut.
Sepertinya Anda benar, untuk permintaan http - yang saya dapatkan hanya sekitar 2ms dari pelambatan. Saya mencoba mendapatkan URL https. Untuk itu, wget sekitar 25 ms lebih lambat untuk permintaan yang dikembalikan Chrome sekitar 10 ms (dan bukan "dari cache"). Baik wget dan Chrome berjalan pada mesin yang sama dengan server web, dan mengatasinya sebagai "localhost", jadi saya menyalahkan wget untuk perbedaan waktu.
Paul Lynch
7

Httping akan melakukannya.

Httping seperti 'ping' tetapi untuk permintaan http. Berikan url, dan itu akan menunjukkan kepada Anda berapa lama untuk terhubung, mengirim permintaan dan mengambil balasan (hanya header). Ketahuilah bahwa transmisi di seluruh jaringan juga membutuhkan waktu! Jadi ini mengukur latensi jaringan + server web.

garyjohn
sumber
3

Wireshark akan membiarkan Anda memeriksa transfer dalam banyak detail. Anda dapat melihat berapa lama untuk mengunduh satu file, seperti yang disarankan Dennis, atau jika Anda membuka URL di browser web, Anda dapat melihat berapa lama waktu yang diperlukan untuk memuat semua file terkait (gambar, skrip, dll).

Neil
sumber
2

Anda dapat melakukannya dengan ikal sesuai jawaban ini

Buat file baru curl-format.txt,, dan tempel di:

    time_namelookup:  %{time_namelookup}\n
       time_connect:  %{time_connect}\n
    time_appconnect:  %{time_appconnect}\n
   time_pretransfer:  %{time_pretransfer}\n
      time_redirect:  %{time_redirect}\n
 time_starttransfer:  %{time_starttransfer}\n
                    ----------\n
         time_total:  %{time_total}\n

Kemudian jalankan curl seperti ini:

curl -w "@curl-format.txt" -o /dev/null -s "http://wordpress.com/"

Harry Wood
sumber