2010-01-15 74 views
2

我讀過的地方,你可以有2個連接(例如ajax請求)到同一臺服務器。它是否正確?每個服務器2個連接?

所以你同時運行不容3 Ajax請求?第三個會發生什麼?

如果我有一個iframe,那麼我可以在當時只運行1個Ajax請求?

什麼來解決這個問題最簡單的方法?

可以使用哪些關鍵字來搜索在谷歌這方面的更多信息?

回答

1

你讀得對,瀏覽器限制同時連接到完全相同的域到2對於任何類型的請求(腳本src,圖像src,ajax等)源於給定的文件,它可以在註冊表中更改爲IE以及about:config中的Firefox。

一個辦法來解決這個問題是有額外的CNAME記錄到你的主機。

+0

是否有任何好的教程來設置這在PHP中? – ajsie 2010-01-15 04:57:56

+0

對不起,我對PHP – Murali 2010-01-15 05:21:21

+0

一無所知你在用什麼lanugage?好奇:) – ajsie 2010-01-15 05:25:11

3

的2連接最大PR服務器在HTTP RFC 2616第8.1節http://www.ietf.org/rfc/rfc2616.txt

客戶端使用永久連接的應該限制的,它們保持在給定服務器 同時連接的數量規定。 A 單用戶客戶端不應與任何服務器或代理服務器保持2個以上的連接。代理服務器或代理服務器或代理服務器應至多使用2 * N連接到 ,其中N是同時活動用戶數量爲 。這些準則旨在改進HTTP響應並避免擁塞。

問:第三個會發生什麼?

第三個將排隊,直到其他HTTP調用的一個返回

問:如果從來就得到了一個iframe中,那麼我可以只運行在時間1個ajax請求?

,而iFrame將通過一個HTTP連接加載,但一旦HTML內容已被返回的HTTP調用已經完成,你再有2個可用的HTTP連接

問:什麼是要解決的最簡單方法這個?

最重要的是不要長時間運行HTTP請求,即加速服務器端的處理。只要HTTP請求的響應時間少於100毫秒,對於普通應用程序來說就不是問題。

+0

但使用彗星IM和它將使用長時間運行的請求,這是目的。希望服務器將處理它.. – ajsie 2010-01-15 09:13:47

+0

還要注意嚮導@的響應,其中列明瞭很好的‘優化’,如果你創建一些額外的CNAMES,你可以強制你的網站兩個以上的連接(例如foo1.bar.com和Foo2 .bar.com)。 Hower,這有其他一些缺點。 – csl 2010-02-20 20:10:45

相關問題