[server] 리눅스 커맨드 라인에서 웹 사이트 테스트하기

Linux 명령 줄에서 웹 사이트를 테스트하는 도구를 찾고 있습니다.

출력에서 http 응답 (상태 코드)을 알아야하지만 사이트의 다른 요소를 다운로드하는 데 걸리는 시간도 벤치 마크합니다.

미리 감사드립니다.



답변

당신이 시도 할 수 wget-p옵션 :

wget -p http://site.com

각 요소를 다운로드하는 데 걸리는 시간과 각 요청에 대한 리턴 코드가 표시됩니다.


답변

Apache Benchmark를 참조하십시오.

아파치 벤치 마크

페이지 성능에 대한 개요를 제공합니다.


답변

다음과 같은 옵션을 볼 수 있습니다 curl.

  • --write-out -몇 가지 시간 관련 변수를 표시합니다
  • --trace-time -각 트레이스 또는 상세 라인에 타임 스탬프를 추가합니다
  • --verbose
  • --include -(HTTP) 출력에 HTTP 헤더를 포함시킵니다.
  • --trace-ascii <file> -설명 정보를 포함하여 모든 수신 및 발신 데이터의 전체 추적 덤프 가능

그리고 다음의 옵션 wget:

  • --timestamping -타임 스탬프 켜기

답변

셀레늄과 컬은 목표에 따라 좋은 옵션입니다. 또한, 내가 꽤 좋아하는 유틸리티는 twill입니다. 자세한 내용은 http://twill.idyll.org/를 참조하십시오 .

양식 작성, 링크 확인 및 응답 코드 확인을위한 전문 언어가 거의 없기 때문에 좋습니다. 그것은 단지 파이썬 코드이기 때문에, 다른 것을 원한다면 쉽게 라이브러리를 가져오고 테스트를 자동화 할 수 있습니다.


답변

curl을 사용하여 페이지의 헤더를 가져오고 프로세스 시간을 정하십시오.

time curl -I http://yourpage.com | grep HTTP

그것을 while 루프로 감싸면 좋습니다. URL을 알고 있으면 모든 요소를 ​​확인할 수있는 것과 같은 방법입니다.


답변

여기에 지시 된대로 ‘siege’라는 명령 줄 도구를 사용해보십시오


답변

선택하는 도구는 측정하려는 대상과 사이트의 복잡성에 따라 다릅니다.

사이트의 동작이 쿠키에 의존하는 경우 (예 : 사용자가 로그인해야 함) ab / curl / wget (다른 답변에 설명 됨)으로 충분하지 않습니다. 한 가지 해결책은 http :: recorder / www :: mechanize를 사용하는 것입니다. 입니다.

요청하는 모든 데이터는 웹 서버 로그에 있으며 간단한 awk 스크립트는 더 읽기 쉬운 형식으로 반환합니다.

사이트의 다른 요소를 다운로드하는 데 걸리는 시간을 벤치마킹하십시오.

이는 성능의 매우 나쁜 지표입니다 (생산 시스템의 상태를 모니터링하는 데 유용하지만). 부피가 큰 보고서, ISO 이미지, 멀티미디어 파일과 같은 대용량 / 느린 리소스를 제외하고는 성능에 대한 인식은 단일 요청을 처리하는 데 걸리는 시간과 거의 관련이 없었으며이를 정확하게 측정하는 것은 매우 어렵습니다 (단순 % 아파치 로그에 D는 문제를 해결하는 것으로 보이지만 TCP 핸드 셰이크, SSL 협상, 캐싱 효과, DNS 조회 시간은 무시합니다.

더 나은 솔루션은 Boomerang 과 같은 것을 사용하는 것이지만 Javascript 가능 브라우저에서 실행됩니다. 이는 개별 HTTP 요청을 추적하는 것보다 인식 된 성능을 더 잘 나타내는 지표를 제공하지만 성능에 대한 가치를 도출하기 위해 브라우저 이벤트에 의존하지만, 인식 된 성능은 뷰포트가 렌더링하는 데 걸리는 시간에 관한 것입니다. WebPageTest 에서 필름 스트립 도구를 살펴보십시오 .)

현장 테스트 사용자 (RUM)와 실제 테스트에 실제로 제공되는 성능을 측정하는 것에 대한 논쟁도 있습니다.