2011-04-19 94 views
3

我有一個經典的ASP應用程序已穩定多年,現在我們遇到了各種各樣的問題。在機器之間移動應用程序並擦拭原始文件後,我們可以重新安裝一些窗口,我們已經看到了以下「症狀」。應用程序池似乎不允許多個同時發生的請求。以下是我們所看到的:IIS 6應用程序池沒有響應多個請求/沒有運行多線程

  • 的應用程序正常運行,對大多數人來說,但是當應用程序池的一個內有人訪問一個長期運行的腳本(通常是一個有很多的數據庫訪問)中的所有其他用戶的在池中必須等待該腳本完成。一旦腳本完成,其他人的請求就會運行。這最初使我們懷疑數據庫連接字符串或什麼。

  • UNTIL ...我們注意到,大文件上傳到我們的系統導致應用程序池停止響應。有趣的是,我們使用SAFileup COM +對象來執行我們的上傳,在彈出窗口中顯示進度顯示。當你去上傳文件時,進度顯示會出現,但不會刷新顯示上傳進度。但是,如果您等待它,文件將最終上載,其他掛起的請求將按正常方式處理。

  • 我們的應用程序池處於默認配置,使用IWAM帳戶啓動。我檢查確保IWAM帳戶具有所有適當的權限。它的確如此。

  • 我們嘗試了各種數據庫連接字符串,沒有解決問題(儘管我認爲它不是數據庫連接字符串)。以防萬一有人認爲它,這裏是我們的連接字符串:「Provider = SQLNCLI; Trusted_Connection = yes; Server =(local); Database = demo;」。這不可能更簡單。這個字符串以前不是問題。

  • 我在網絡花園的事情中發生了變化,它確實使系統響應多個請求,但花園中的每個工作線程都有自己的會話狀態,這會導致我們的用戶在請求獲取時被啓動分配給一個新的工作線程。無論如何,只有在花園裏有一個單一的工人流程纔是問題。

  • 我已經使用SQL事件探查器和sp_who2來查看在長時間運行的腳本中是否存在SQL Server上的任何死鎖或塊。沒有。

  • 這些問題最初是在我們從Microsoft安裝了一些修補程序之後開始的。我們擦拭了一臺機器,並安裝了Win2k3服務器,然後安裝了SP2,然後再沒有修補。問題依然存在,所以它似乎不是一個補丁。

我現在非常茫然......有沒有人有過類似問題的經驗?如果是這樣,他們是如何修復的?

+0

1.僅當有人上傳文件時,應用程序是否阻塞? 2.你可以禁用文件上傳功能並查看應用程序是否正常運行? 3。該應用程序最初是否在Windows 2000上運行? 4.它與Windows 2000上的SAFile UP版本相同嗎? 5.您是否在IIS5兼容模式下運行IIS6? – Kev 2011-04-19 21:46:59

回答

2

檢查您是否在服務器上啓用了ASP調試。這將強制ASP腳本引擎在單個線程上運行。

+0

,解決了3天的頭痛...謝謝! – AndreaCi 2013-12-10 17:12:47