2011-02-18 30 views
0

Web服務器如何知道瀏覽器不再需要響應。例如說:服務器仍然處理,瀏覽器導航

  1. 客戶端/瀏覽器發送一個請求
  2. Web服務器正在處理
  3. 客戶端/瀏覽器移動到另一個頁面

當一個新的請求是來自客戶端,不服務器殺死前面的線程?

回答

0

每個客戶端請求被綁定與瀏覽器的響應:

  1. 客戶端/瀏覽器發送一個請求(request1)
  2. Web服務器正在處理
  3. 客戶端/瀏覽器移動到另一個頁(請求2)
  4. Web服務器正在處理中
  5. Web服務器返回響應1
  6. 客戶端/瀏覽器忽略響應1(這是等待荷蘭國際集團爲它的最後一個請求響應)
  7. Web服務器返回RESPONSE2
  8. 客戶端/瀏覽器顯示RESPONSE2

點擊,同時將一些產生的請求,這將是幾個環節耗時服務器。瀏覽器將執行無關 - 無關響應的工作。

要回答你的第一個問題,除非你實現一個服務來殺死舊的服務器進程,否則它無法知道。這就是爲什麼Web服務器有一個超時參數。

+0

完美的,我應該在問這個問題之前測試過這個。用過Fiddler,我可以看到http://www.fiddler2.com/Fiddler/help/images/ui.asp16.gif - 會話被客戶端顯示出來。謝謝。 – 2011-02-18 17:43:09