2012-05-17 110 views
1

我使用php腳本來解析遠程xml文件並將網頁上的輸出打印到div中。由於我需要輸出必須與當前正在播放的音軌同步,因此我每20秒使用Javascript重新加載div內容。在測試頁面時,我遇到了託管問題,並收到「超出IP連接限制」的消息,但無法訪問該站點。我已經改變了IP來解決這個問題。是否有解決方案來解析元數據而不會碰到服務器並運行到虛擬主機問題?超出IP連接限制

<script> 
setInterval(function() { 
    $('#reload').load('current.php'); 
}, 20000); 
</script> 

回答

2

由於網頁是基於客戶端的實體,它在本質上是無法接受的是它並沒有要求任何數據。這就是說,你可以考慮一些選擇。

首先,我不知道您使用的是什麼網絡主機,但他們應該讓您每隔20秒刷新一次網頁(或提出您的要求),所以我會聯繫他們。拒絕服務攻擊應該更像每個連接每秒2或3次。對此,我可能會有更好的答案,但我乍看之下就是這樣。

您可能需要考慮的一個選項是使用Web Socket,這是HTML 5的一項新功能,它使Web服務器能夠維護訪客瀏覽器和來回發送數據包之間的開放連接。這可以防止瀏覽器每隔20秒不斷查詢服務器。當然,這些都是新的,我相信他們只能在Safari和Chrome中工作。我沒有嘗試過,但計劃在未來。

總而言之,我不知道一個更好的方法,而不是每隔一段時間輪詢一次服務器以檢查更改。基於我的瀏覽器的XMLHttpRequest選項卡,這就是gmail尋找新消息的方式。如果您的主機不允許您每個時間間隔發送更多請求,則可能會降低您輪詢服務器的頻率或切換到其他主機。

+0

我使用freehostingnoads.net,輪詢間隔時間爲10秒,但測試不連續,只是定期 – fxgreen