요청이 5~10건마다 중단되는 웹사이트가 있습니다. 작동할 때는 빠르게 작동하지만 브라우저를 몇 분 동안 그대로 둔 다음 링크를 클릭하면 응답하지 않고 멈춥니다. 사용자는 브라우저에서 새로 고침을 몇 번 눌러야 하며 그런 다음 다시 빠르게 실행됩니다.
저는 IIS 7.0(Windows Server 2008)에서 .NET 3.5, ASP.NET MVC 1.0을 실행하고 있습니다. 웹앱은 동일한 인스턴스에서 로컬로 실행되는 SQLServer 2005 DB에 연결됩니다. DB에는 약 300MB의 RAM이 있으며 나머지는 웹 요청에 무료로 제공되는 것으로 추정됩니다.
GoGrid의 클라우드 서버에서 호스팅되며 이 인스턴스에는 1GB의 RAM과 1개의 코어가 있습니다. 그다지 많지는 않다는 것을 알고 있지만 현재 사이트를 사용하는 사람은 나뿐이고 여전히 이러한 중단 현상이 발생합니다.
문제를 해결하는 것이 어렵다는 것을 알고 있지만 누군가가 가능한 IIS 구성 문제 또는 사용자 1000명당 이러한 기술을 사용하는 "대략적인" 평균 하드웨어 요구 사항 등에 대해 올바른 방향을 알려줄 수 있기를 바랐습니다. 웹 서버의 경우 최소 2개의 코어가 있어야 바쁜 경우에도 응답을 받을 수 있습니다. 아니면 슬래시닷 사람들이 맞고 나는 Windows 시대를 사용하는 바보일 수도 있습니다. ㅋㅋㅋ. 하지만 내 경험에 따르면 이는 일반적으로 기본 기술의 결함이 아니라 내 알고리즘/구성 오류입니다.
어떤 통찰력이라도 감사하겠습니다.
답변1
실제 서버에서 앱을 실행하여 앱이 멈추는지 확인해 보셨나요? 귀하의 앱이나 OS가 문제라고 생각하기 전에 "클라우드" 컴퓨팅 플랫폼을 의심해 보겠습니다. SQL에 300Mb의 RAM이 있다고 말하는 이유는 무엇입니까? 이것이 SQL에서 사용하는 것입니까? 귀하의 사양에 따르면 1GB의 RAM을 갖춘 서버가 있다고 나와 있습니다.
답변2
Jim B가 지적했듯이 배포하기 전에 LAB에서 테스트를 수행해야 합니다. 다음을 확인하세요
IIS - 앱에 자체 애플리케이션 프로세스 공간이 있는지 확인하세요.
asp.net에서 세션 상태를 확인하세요.
앱(IIS)과 DB 간의 연결을 확인하세요. 클라우드 연결이 끊어지는 것 같습니다.
IIS의 이벤트 로그를 볼 수 있나요? 저거 좀 보세요.
답변3
제공된 정보에 따르면 시스템에서 웹 서버와 데이터베이스를 실행하고 있으므로 가장 가능성이 높은 문제는 VM의 단일 코어인 것 같습니다. 호스팅 회사에서 코어 추가/제거를 허용하는 경우 두 번째 코어를 추가하고 성능을 다시 확인하세요.