2011-08-18 38 views
3

我有一個web應用程序的想法,這將需要AJAX請求功能。它的關鍵在於,只要用戶在網站上就可以運行AJAX請求。我的問題是,如果用戶離開網站(我的ajax請求將運行)4/5小時,這些AJAX請求仍然會運行,我的擔心是屏幕變暗,屏幕保護程序,電腦的睡眠狀態。這些都會影響我的web應用程序的性能嗎?連續的AJAX請求 - 對網絡應用程序的影響?

回答

2

不幸的是,這是非常依賴客戶端。例如,移動設備可能在進入睡眠狀態時停止處理JS(例如,爲了節省電池壽命)。然而,在我之前寫過的一個鏡像旋轉器應用程序中,它發送了定期的請求到服務器來檢索圖像(我有理由不緩存它們,我發誓),主要由非移動客戶端訪問,我觀察到請求繼續幾個小時甚至幾天。雖然我不知道客戶端機器是否進入睡眠狀態,但我確信它確實如此。

長話短說 - 我認爲你不能確定,但​​對於一些目標受衆,你可以合理確信。我會建議調查你的觀衆。

0

如果在您的站點用戶需要登錄簡單保持會話超時選項,讓說15分鐘。這意味着在15分鐘的空閒時間之後,會話將被銷燬並且ajax請求會自動截斷。

如果您沒有登錄,這將變得困難,但仍然可以通過ip跟蹤或類似的機制來實現,但這些永遠不會像第一次那樣充分證明。

+0

這是語言相關的,但會話超時通常不會在正在運行的腳本上強制執行,而是在會話開始時檢查。所以這可能無法正常工作...... –

+0

我不是要求在運行腳本上執行會話超時。這與您的手機進入睡眠模式類似。您檢測您的手機是否已進入睡眠模式。如果是,你暫停它,對吧?同樣,您可以跟蹤用戶的空閒時間,並根據該時間停止執行ajax調用。讓我知道,如果這是有道理或根本沒有:(? –

0

我必須同意肖恩,因爲它非常面向客戶。如果客戶端保持活躍狀態​​,那麼通過我們的非人類交互,AJAX應該繼續前進。