2010-12-10 2 views
0

서버에 존재하지 않는 이미지와 CSS 파일이 내 사이트에 있으므로 방문자가 Apache에서 3 404 오류를 로그 할 때마다 로그에 남습니다. 항목은 페이지에서 숨겨 지므로 페이지 표시에 영향을주지 않습니다. 저희 사이트는 테스트 및 프로덕션 환경에서 잘 수행됩니다. 우리는 최근에 하루에 30,000-40,000 명의 방문자가 2 일 동안 트래픽이 급증하여 아파치가 멈추어 서 22-25 초 동안 기다렸다가 브라우저로 무엇인가를 되돌려 보냈습니다.깨진 CSS/이미지 링크 404 오류가로드되는 동안 서버 성능에 영향을 줍니까?

페이지에서 발생한 404 오류로 인해 서버 성능이 변경 되었습니까?

일반적인 요청보다 404 오류가 많은 리소스 집약적입니까?

모든 정보는 다음과 같습니다. Apache가 404 오류를 처리하는 방식에 감사드립니다.

감사합니다, Sj로

+0

은 404 문서를 던지고 있는지 여부에 따라 다릅니다. – ajreal

+0

html 페이지가 잘로드됩니다. 두 개의 이미지와 css 파일이 서버에없는 페이지에서 호출됩니다. 오류는 최종 사용자에게 보이지 않습니다. –

답변

0

으로 주석의 ajreal 제공 문서 리소스 할당을 증가하지만, 요구에 응답하는 모든 서버가 일부 자원을 획득 할 것이라고 말했다.

+0

404 문서가 throw되지 않고 사용자는 오류를 전혀 볼 수 없습니다. 404 오류는 Apache 로그에만 나타납니다. –

0

사용자 상호 작용에 대한 응답으로 Apache에서 수행 한 모든 조치로 인해 다른 사용자의 성능이 저하 될 수 있습니다. 이는 너무 작아도 거의 눈에 보이지 않습니다.

소프트웨어 (메모리와 현명)와 하드웨어 (물리적 제한 및 용량)는 사용자 상호 작용에 적절하게 응답하거나 기록하기위한 몇 가지 작업을 수행합니다.

이 경우 사용자 (30,000-40,000 명)가 사이트를 방문했을 때 Apache는 구성에 의해 설정된 로깅 기본 설정을 충족하기 위해 이러한 오류를 모두 기록해야했습니다. 로그 파일은 gard 디스크의 텍스트 파일 일 뿐이므로 하드 디스크가 너무 바빠서 실제 사이트 내용에 대한 읽기 및 쓰기 작업을 수행 할 수 없습니다.

Apache가 404 오류를 문서로 만들면 서버로드가 훨씬 커집니다. 어쨌든 서버 성능을 향상시키는 가장 좋은 방법은 404 오류를 완전히 없애는 것입니다.

Apache 구성 파일의 MaxRequestsPerChild 매개 변수를 약 1000으로 늘려 하나의 중앙 Apache 프로세스에서 여러 하위 프로세스로 스트레스를 줄일 수도 있습니다. 이렇게하면 여러 아파치 프로세스가 동시에 새로운 CPU 코어로 확장되어 동시에 모든 CPU 코어에 대한 스트레스를 증가시킬 수 있습니다. 나는 또한이 같은 것으로 아파치 설정의 MPM을 변경하는 것이 좋습니다 많은 방문자와

: 웹 사이트 프런트 엔드 engeneering에 야후의 지시에 따라

<IfModule prefork.c> 
StartServers  2 
MinSpareServers 2 
MaxSpareServers 5 
ServerLimit  100 
MaxClients   100 
MaxRequestsPerChild 4000 
</IfModule> 
0

* 없음 404 없습니다

HTTP 요청은 비용이 많이 들기 때문에 HTTP 요청을하고 쓸모없는 응답 (예 : 404 찾을 수 없음)을 얻는 것이 전혀 필요하지 않으며 사용자 경험이 느려집니다. 일부 사이트에는 사용자 경험에 도움이되지만 데이터베이스 등의 서버 리소스를 낭비하는 유용한 404 개의 "X를 사용 했습니까?"라는 메시지가 있습니다. 특히 외부 자바 스크립트에 대한 링크가 잘못되어 결과가 404 인 경우에 좋지 않습니다. 첫 번째로이 다운로드는 병렬 다운로드를 차단합니다. 다음으로 브라우저는 404 응답 본문을 JavaScript 코드처럼 분석하려고 시도 할 수 있습니다.*

위로 가기 질문 : 오류 404는 컴퓨터가 멈추는 원인이 될 수 있습니다.