我有權訪問交通數據服務器,從中獲取XML文件以及我需要的信息。 (例如:A點到B點:旅行時間20分鐘,距離18英里等)。XML到數據庫,我應該採取什麼路線?
我下載XML文件(已存檔),提取它,然後處理它並將其存儲到數據庫中。我只允許每次請求下載XML文件,但僅限於上次下載已經過去5分鐘。流量服務器上的XML每30秒更新一次,大約5分鐘。在5分鐘內,任何請求網頁的用戶都將從數據庫中檢索數據(無更新),從而限制對流量服務器發出的請求數量。
我目前的做法存在的問題是,當我得到新的XML文件時,整個過程需要一些時間(3-7秒),這使得用戶在得到任何東西之前等待太久。但是,如果不需要XML下載,並且所有數據都直接從數據庫中顯示出來,則過程非常快。 存檔的XML約爲100-200KB,而未存檔的XML約爲2MB。 XML文件包含來自3或4個狀態的流量數據,而我只需要一個狀態的數據。這就是我目前使用DB方法的原因。
這種方法很好嗎?我想知道是否應該直接從下載的XML文件中爲每個請求提取數據,並以某種方式限制XML文件從流量服務器下載的頻率。或者,任何人都可以指點我一個更好的方法?該XML的
樣本文件
這是怎麼看我的網站上
定義「好」。什麼措施對你很重要? – duffymo
我想到了CRON的工作路線,但這意味着無論用戶請求數據,它都會被更新。現在只有在請求時纔會更新,並且自上次更新後不超過5分鐘。 即使在請求新的XML時,也會有更快的訪問權限! – Cristian
您可以創建定期訪問XML文件的CRON作業,解析它並將數據存儲到數據庫中。那麼用戶只能訪問數據庫數據。這樣用戶訪問數據時就不會有明顯的延遲。 –