Atunci când se depanează performanța unui site web, este adesea util să se măsoare cât de repede răspunde un server la solicitări. Dacă aveți acces SSH la un server, puteți utiliza instrumentul de linie de comandă curl pentru a colecta informații detaliate privind timpul de răspuns, fără a apela la servicii externe de testare.
Această metodă este utilă pentru:
- Depanarea site-urilor web lente
- Măsurarea timpilor de răspuns ai serverului
- Testarea conectivității la rețea
- Verificarea performanței după modificări de configurare
- Monitorizarea disponibilității site-ului web
Cuprins
Ce este cURL?
cURL este un instrument de linie de comandă utilizat pentru transferul de date prin diverse protocoale, printre care HTTP, HTTPS, FTP și SMTP.
Pe lângă descărcarea de conținut, cURL poate afișa și informații detaliate despre o conexiune, inclusiv timpul de căutare DNS, timpul de conectare, timpul de răspuns al serverului și durata totală a cererii.
Măsurarea timpului de răspuns al site-ului web
Următoarea comandă afișează mai multe indicatori de performanță utili pentru un site web:
curl -o /dev/null -s -w "\
IP-ul serverului: %{remote_ip}\n\
Căutare DNS: %{time_namelookup} sec\n\
Timp de conectare: %{time_connect} sec\n\
Handshake TLS: %{time_appconnect} sec\n\
Timp până la primul byte: %{time_starttransfer} sec\n\
Timp total: %{time_total} sec\n" \
https://example.com
Înlocuiți https://example.com cu site-ul web pe care doriți să îl testați.
Înțelegerea rezultatelor
IP-ul serverului
Afișează adresa IP a serverului care a răspuns la solicitare.
Căutare DNS
Afișează cât timp a durat rezolvarea numelui de domeniu într-o adresă IP.
Timp de conexiune
Măsoară timpul necesar pentru stabilirea unei conexiuni TCP la server.
Handshake TLS
Pentru site-urile web HTTPS, aceasta indică cât timp a durat stabilirea conexiunii criptate SSL/TLS.
Timpul până la primul octet (TTFB)
Unul dintre cei mai importanți indicatori.
Măsoară timpul scurs între trimiterea cererii și primirea primului byte al răspunsului. Un TTFB ridicat indică adesea:
- Performanță lentă a aplicației
- Blocaje la nivelul bazei de date
- Servere supraîncărcate
- Cod ineficient
Timpul total
Durata totală a cererii, inclusiv stabilirea conexiunii și livrarea conținutului.
Exemplu de rezultat
IP-ul serverului: 93.184.216.34
Căutare DNS: 0,005 sec
Timp de conectare: 0,030 sec
Handshake TLS: 0,065 sec
Timp până la primul byte: 0,120 sec
Timp total: 0,180 sec
Verificați doar codul de stare HTTP
Dacă doriți doar să verificați dacă un site web răspunde corect:
curl -s -o /dev/null -w "%{http_code}\n" https://example.com
Exemplu de rezultat:
200
Codurile de stare obișnuite includ:
200– OK301– Redirecționare404– Pagina nu a fost găsită500– Eroare internă a serverului
Testarea de mai multe ori
Pentru a obține rezultate mai fiabile, rulați testul de mai multe ori:
for i in {1..5}; do
curl -o /dev/null -s -w "Timp total: %{time_total} sec\n" https://example.com
done
Acest lucru ajută la identificarea încetinirilor intermitente și oferă o imagine mai realistă a performanței site-ului web.
Rezumat
Utilitarul curl este un instrument simplu, dar puternic, pentru măsurarea timpilor de răspuns ai site-ului web direct din linia de comandă. Prin analizarea unor indicatori precum timpul de căutare DNS, timpul de conectare, timpul până la primul byte (TTFB) și durata totală a cererii, puteți identifica rapid potențialele blocaje de performanță și puteți verifica dacă un site web răspunde conform așteptărilor.