2011-10-28 152 views
0

我正在編寫解析來自不同來源的RSS提要的Android應用程序。我正在做的是,在遠程服務器上,我將所有RSS源合併爲一個大XML文件,然後在設備上解析(使用SAX解析器),而不是單獨訪問每個站點。所以我基本上是緩存RSS提要的性能,它工作得很好。解析來自不同來源的XML

我想要做的是給用戶選擇他們想看到哪些飼料來源。因此,如果我緩存站點A,B,C,用戶可以選擇他們只想看到站點A和C.我不確定設置XML緩存的最佳方式。我可以創建較小的XML文件,也可以保留一個大的XML文件,並在解析時刪除用戶不需要的項目。

不確定移動設備的最佳設計。解析一堆較小的文件或一個大文件會更高效嗎?

+0

我看不出在服務器上只有一個源是「更好」的(這肯定可能是緩存)。雖然多個來源需要更多的連接,但它可能是一個相對較少的數量,而拆分來源不應包含更多數據 - 例如,個人獲取=僅需要下載的數據 - 除非合併的源代碼在合併饋送數據方面做了一些非常聰明的事情。 – 2011-10-28 17:52:25

回答

0

我看到將數據分割成不同文件的一個好處是它是一次性操作。所以當你從服務器第一次將它分解成不同的文件時(這可能會很慢),但是如果你重新使用這些數據,你可以簡單地從文件中加載,而且你不必在以後過濾。因此,當選擇A,B或C選項時,它對用戶來說顯得更加快速。

但是,如果您只使用一次數據,則不再會獲得此優勢。

+0

我幾乎每次請求都只使用一次數據。數據經常改變方式爲一次性使用。 –

+0

在這種情況下,是否可以拆分服務器上的數據併發送多個文件?我認爲這仍然可以節省設備上的處理 – Craigy

+0

是的,肯定的是,聽起來像將它們分成不同的文件是最好的方法。 –