데이터베이스 중심 웹 앱에서 데이터베이스를 사용할 수없는 경우 사용자는 무엇을 확인해야합니까?

StackOverflow https://stackoverflow.com/questions/1671663

문제

웹 애플리케이션이 데이터베이스에 의존하여 동적 컨텐츠를 제공하고 해당 콘텐츠가 어떤 이유로 든 (데이터베이스 서버 다운 등)이 시나리오를 처리하는 데 선호되는 방법은 무엇입니까?

  1. 방문자를 사용자 정의 404 페이지로 리디렉션 하시겠습니까?
  2. 어쨌든 페이지를 표시하지만 콘텐츠가있는 곳에 일종의 오류 메시지를 포함시킬 수 있습니까?
  3. 정적 콘텐츠가있는 관련 페이지를 표시 하시겠습니까?
  4. 다른?

웹 마스터 및/또는 Sysadmin에 알리는 것뿐만 아니라 적절한 오류 로깅이 발생해야한다는 것을 이해합니다. 저는이 상황에서 최종 사용자가 무엇을 볼 수 있는지에 대한 모범 사례에 주로 관심이 있습니다.

도움이 되었습니까?

해결책

#3 할 수 있다면 (예 : 20 분마다 취한 동적 컨텐츠의 스냅 샷), 그러나 그것이 정적 콘텐츠임을 명확하게 결정하십시오.u003Ctime> 시스템 문제가 해결 되 자마자 새로 고침됩니다.

#2 만약 당신이 할 수 없다면, 오류가 사람을 읽을 수 있고 Java 또는 SomeSuch의 예외 스택 추적에 대한 문자 그대로의 재 인쇄가 아닙니다.

다른 팁

당신이 무엇을하든 하지 않다 404 반환 - 응용 프로그램이 제대로 작동하지 않을 수 있지만 URL이 잘못되었다는 인상을주고 싶지 않습니다. 다른 것 외에도 이것은 사이트의 SEO에 부정적인 영향을 줄 수 있습니다.

200 이외의 HTTP 상태를 반환하려면 503 "서비스를 사용할 수없는"응답을 권장합니다. 이는 HTTP 요청에 잘못된 것이 아니라 응용 프로그램에 대한 임시 결함을 더 의미합니다.

나는 이것이 전체 페이지의 내용이 데이터베이스에 어떻게 연결되어 있는지에 달려 있다고 생각합니다. 예를 들어, 웹 앱에서 데이터베이스가 다운되면 인증 방법이 없습니다. 우리의 유일한 리조트는 '우리는 지금 문제가 있습니다. 나중에 다시 들러서.

지금; 동적 콘텐츠가 대부분 정적 파일 위에있는 날의 인용과 유사한 경우 컨텐츠 대신 간단한 오류 메시지가 있습니다. 또는 동적 컨텐츠의 생략이 모두 적절할 것입니다.

그래서; 페이지가 제공하는 서비스와 백엔드없이 유용한 것을 제공 할 수 있는지 여부에 따라 다릅니다.

#3이 아마도 최고라고 생각하지만 항상 가능하지는 않습니다. 그것이 불가능하다면, 어떤 종류의 "기술적 어려움, 제발 대기하십시오 ..."가 가장 좋을 것입니다 (분명히 문구를 더 나은 것으로 바꿀 수 있습니다). 실제로 인쇄 오류를 피하십시오 : ERR_123/SIGSEGV! (또는 그와 비슷한 것) 큰 빨간 문자로. 사용자는 앱이 고장 났다고 생각하고 돌아 오지 않을 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top