2011-04-19 3 views
3

나는 몇 년 동안 안정적인 고전 ASP 응용 프로그램을 가지고 있으며 이제는 모든 종류의 문제가 발생합니다. 컴퓨터간에 응용 프로그램을 이동하고 원본을 지워서 새 창을 설치할 수있게 된 후 다음과 같은 "증상"이 나타납니다. 앱 풀은 여러 개의 동시 요청을 허용하지 않습니다. 여기에 우리가보고있는 내용은 다음과 같습니다 응용은 대부분의 사람들이 정상적으로 실행IIS 6 응용 프로그램 풀이 다중 요청에 응답하지 않거나 다중 스레드를 실행하지 않음

  • 하지만, 응용 프로그램 풀 중 하나에 누군가가 장기 실행 스크립트 다른 모든 사용자 (DB 액세스의 많은 보통 하나)에 액세스 할 때 풀에서 스크립트가 완료 될 때까지 기다려야합니다. 스크립트가 완료되면 다른 모든 사람의 요청이 실행됩니다. 이것은 처음에 DB 연결 문자열 또는 다른 것으로 의심되었습니다.

  • UNTIL ... 큰 파일이 Google 시스템에 업로드되었음을 확인했습니다. 은 앱 풀의 응답을 중지시킵니다. 흥미로운 점은 SAFileup COM + 객체를 사용하여 팝업 창에 진행 표시가있는 업로드를 수행한다는 것입니다. 파일 업로드를 진행하면 진행률 표시가 나타나지만 업로드 진행률을 표시하기 위해 새로 고침하지 않습니다. 그러나 기다리면 파일이 결국 업로드되고 다른 보류중인 요청은 정상적으로 처리됩니다.

  • 우리의 응용 프로그램 풀은 IWAM 계정을 사용하여 기본 구성으로 시작됩니다. IWAM 계정에 모든 적절한 권한이 있는지 확인했습니다. 그렇습니다.

  • 우리는 다양한 DB 연결 문자열을 시도했지만 아무도이 문제를 해결하지 못했습니다.하지만 DB 연결 문자열이 아닌 것은 아닙니다. 누군가가 그렇다고 생각하면 연결 문자열은 "Provider = SQLNCLI; Trusted_Connection = yes; Server = (local); Database = demo;"입니다. 더 간단 할 수는 없습니다. 이 문자열은 이전에는 문제가되지 않았습니다.

  • 나는 웹 가든의 일에 열중하고 실제로 시스템이 여러 요청에 응답하게하지만, 정원의 각 작업자 스레드는 자신의 요청이 무작위로 도착할 때 부팅되도록하는 자체 세션 상태를 갖습니다. 새 작업자 스레드에 할당됩니다. 어쨌든 정원에 단 하나의 작업자 프로세스 만있는 것이 문제가되지 않았습니다.

  • SQL Profiler와 sp_who2를 사용하여 장시간 실행되는 스크립트 중에 SQL Server에 교착 상태 나 블록이 있는지 확인했습니다. 이 없습니다.

  • 처음에는 Microsoft에서 일부 패치를 설치 한 후 문제가 시작되었습니다. 우리는 컴퓨터를 지우고 Win2k3 서버를 설치 한 다음 SP2를 설치 한 후 더 이상 패치를 적용하지 않았습니다. 문제는 그대로 남아있어 패치로 보지 못했습니다.

저는 지금 많은 상실감이 있습니다 ... 비슷한 문제가있는 경험이 있습니까? 그렇다면 어떻게 수정 되었습니까?

+0

1. 누군가가 파일을 업로드 한 경우에만 응용 프로그램이 차단됩니까? 2. 파일 업로드 기능을 비활성화하고 응용 프로그램이 정상적으로 실행되는지 확인할 수 있습니까? 삼.원래 응용 프로그램이 Windows 2000에서 실행 되었습니까? 4. Windows 2000의 SAFile UP과 동일한 버전입니까? 5. IIS5 호환 모드에서 IIS6을 실행하고 있습니까? – Kev

답변

2

서버에서 ASP 디버깅이 활성화되어 있지 않은지 확인하십시오. 이렇게하면 ASP 스크립트 엔진이 단일 스레드에서 실행됩니다.

+0

3 일간의 머리 앓이 해결 ... 고마워요 !! – AndreaCi

관련 문제