Uma das ações que realizamos no dia a dia, independentemente da função ou posição que tenhamos, é o acesso a vários sites. Embora muitas vezes acedamos e realizemos as tarefas que nos são necessárias, trabalho, estudo, entretenimento, etc., não sabemos que por detrás de tudo isto existe uma máquina gigante que permite que a resposta de um site seja óptima ou não.
Não há nada mais irritante, em alguns casos, tira a raiva do que ir a um endereço da web e esperar alguns minutos para que esse site carregue, o que pode ser prejudicial se for um site especial, como pagamento de impostos, validação de identidade, etc.
A velocidade com que um site responde a uma solicitação é crucial para que esse site ganhe reputação, os usuários se sintam à vontade e tudo corra bem.
Neste tutorial veremos como é possível testar a velocidade com que um site é exibido através do terminal Linux. Existem alguns parâmetros que desempenham um papel fundamental aí, tais como:
- O tempo que leva para resolver o nome de domínio.
- A conexão TCP com o servidor.
- Os arquivos transferidos e muito mais.
Para isso usaremos uma ferramenta chamada CURL.
O que é CURLCURL é uma ferramenta de linha de comando projetada para transferir dados usando URLs. É muito versátil, pois suporta os protocolos DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS , Telnet e TFTP., HTTP POST, HTTP PUT e muitos mais.
O principal uso do CURL é transferir dados por meio de linhas de comando ou scripts e, em alguns casos, baixar itens da rede.
Mas esse comando vai muito além e tem outras funções que ainda não exploramos totalmente e o Solvetic vai nos ensinar como podemos usar o CURL para determinar a velocidade de carregamento de um site.
Conseguimos isso graças a alguns parâmetros adicionais que podemos adicionar ao comando.
Verifique a velocidade de carregamento de um site no Linux
Passo 1
Para isso abrimos o console do terminal e executamos a seguinte linha com o nome do site desejado:
curl -s -w 'Tempo de resposta do site de teste para:% {url_effective} \ n \ nTempo de pesquisa: \ t \ t% {time_namelookup} \ nTempo de conexão: \ t \ t% {time_connect} \ nTempo de pré-transferência: \ t % {time_pretransfer} \ nTempo de início de transferência: \ t% {time_starttransfer} \ n \ nTempo total: \ t \ t% {time_total} \ n '-o / dev / null http://www.solvetic.com
PROLONGAR
Passo 2
Neste comando, as variáveis que usamos são:
time_namelookupRefere-se ao tempo, medido em segundos, do tempo total em que a solicitação foi enviada até o recebimento de uma resposta.
time_connectAbrange todo o tempo, em segundos, que a conexão do protocolo TCP com o computador remoto foi concluída.
time_pretransferRefere-se ao tempo, também em segundos, em que a transferência do arquivo foi iniciada.
time_starttransferInclui a hora em que o primeiro byte estava prestes a ser transmitido ao computador remoto.
time_totalIndica o tempo total que foi utilizado, em segundos, para completar a ação de resposta do equipamento remoto.
etapa 3
Podemos ver que esta linha executada é longa e, portanto, sujeita a algum tipo de erro de digitação. Se nos inclinarmos para algo mais resumido, podemos executar o seguinte:
curl -s -w "@ format.txt" -o / dev / null http://www.solvetic.com
PROLONGAR
Passo 4
Neste caso, usamos os seguintes parâmetros:
-sExecuta o modo de trabalho silencioso do CURL.
-CArmazena as informações em stdout.
-ouÉ responsável por redirecionar os resultados para a rota indicada.
Etapa 5
No caso de sites protegidos com HTTPS, podemos executar o seguinte:
curl -s -w 'Tempo de resposta do site de teste para:% {url_effective} \ n \ nTempo de pesquisa: \ t \ t% {time_namelookup} \ nTempo de conexão: \ t \ t% {time_connect} \ nTempo de AppCon: \ t \ t % {time_appconnect} \ nTempo de redirecionamento: \ t \ t% {time_redirect} \ nTempo de pré-transferência: \ t% {time_pretransfer} \ nTempo de início de transferência: \ t% {time_starttransfer} \ n \ nTempo total: \ t \ t % {time_total} \ n '-o / dev / null https://www.solvetic.com
PROLONGAR
Etapa 6
Neste caso de HTTPS, usamos as seguintes variáveis:
time_appconnectEsse valor se refere ao tempo medido em segundos para todo o processo de comunicação SSL entre o computador de origem e o computador remoto.
time_redirectÉ o momento em que o processo de redirecionamento estava envolvido, onde ações como conexão, análise de nome e muito mais são incluídas.
Cada vez que executarmos o comando receberemos um novo horário devido às cargas que o servidor pode ou não estar rodando naquele momento.
Etapa 7
Podemos utilizar estas opções para saber, em tempo real, qual é o tempo de carregamento de um site e destacamos que sempre demorará um pouco mais, por motivos de segurança, para carregar um site seguro. Para saber mais sobre o CURL, podemos executar o seguinte comando:
man curlComo podemos ver através desses comandos, podemos verificar a velocidade de carregamento em um site no Linux