簡體   English   中英

XML到數據庫,我應該采取什么途徑?

[英]XML to Database, what route should I take?

我可以訪問一個流量數據服務器,從中獲取XML文件,其中包含我需要的信息。 (例如:A點到B點:行程時間20分鍾,距離18英里等)。

我下載XML文件(存檔),解壓縮,然后處理並存儲到數據庫中。 我只允許每個請求下載XML文件,但僅限於從上次下載過去5分鍾。 流量服務器上的XML每30秒更新一次,大約5分鍾。 在5分鍾期間,任何請求網頁的用戶都將從數據庫中檢索數據(無更新),因此限制了對流量服務器的請求數量。

我當前的方法存在的問題是,當我獲得新的XML文件時,整個過程需要一些時間(3-7秒),這會讓用戶在得到任何東西之前等待太多。 但是,當不需要XML下載並且直接從DB顯示所有數據時,該過程非常快。 存檔的XML大約為100-200KB,而未存檔的XML大約為2MB。 XML文件包含來自3個或4個狀態的流量數據,而我只需要一個狀態的數據。 這就是我目前使用DB方法的原因。

這種方法是好的嗎? 我想知道是否應該直接從下載的XML文件中為每個請求提取數據,並以某種方式限制XML文件從流量服務器下載的頻率。 或者,有人能指出我更好的方式嗎?

XML文件的示例 XML文件的示例

這是它在我的網站上的樣子 這是它在我的網站上的樣子

每次更改時都需要下載XML。

但是,只有在下一段時間內您有活躍用戶才能下載文件。

由於您無法預見未來,因此您不知道在接下來的7秒內是否會收到用戶的請求。

但是,如果XML文件已更新,您可以找到HEAD請求。

因此,您可以創建一個每次更改時從遠程系統下載XML的服務。 如果通常不需要日期,則可以將該服務配置為不經常檢查和/或下載。

只要您可以通過對用戶行為的統計分析了解下載服務的最佳配置,系統的其余部分就可以獨立於它。

如果您需要更實時,則需要根據來自其他系統的更改數據配置新服務,然后您需要開始在這兩個系統之間雙向交換數據,這更復雜並且可能導致更多副作用。 但是從您提供的數字來看,無論如何都不需要這樣的細節,所以我不會關心它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM