2011-05-02 77 views
2

我有一個通過AJAX發送信息到服務器的網頁。我需要確保服務器以正確的順序處理請求。服務器可能以不同的順序收到請求,而不是從它們發送的內容中收到請求?網頁確保請求以正確的順序發送,但請求之間的時間可能很短。該頁面不接收來自服務器的數據,因此響應不需要按順序排列。服務器是否總是按照發送順序接收AJAX請求?

回答

1

這取決於您的服務器和服務器負載。通常的請求,如果他們不需要太多的處理器時間,他們應該按正確的順序處理。

要絕對確定,你可以實現一個發送隊列。第二個請求,等待第一個完成,等等。這當然需要更多的實施努力。

1

我不認爲有保證您的請求按您發出的確切順序處理。如果訂單很重要,那麼您可能應該將這些請求捆綁爲一個請求,或者在發出下一個請求之前等待每個請求返回。

3

由於每個AJAX請求都在自己的連接中運行,因此不能保證任何異步請求將按照它們發送的相同順序到達。

如果您想確保它們以發送的相同順序到達,請使用同步請求。 另一種可能性是將請求集中在一起。

1

來自瀏覽器的每個AJAX請求可以通過不同的網絡路徑到服務器。因此,如果瀏覽器以1,2,3,4,5的順序發出異步請求,他們可能會在進行臨時測試時按照該順序顯示,但在某些時候,它們可能會按照1,2,5,3的順序到達,4當網絡上的東西發生變化時。如果服務器收到的消息順序很重要,則需要創建消息隊列。

相關問題