2010-09-06 60 views
2

這個問題可能是理論上的,但我認爲它的一些情況是有道理的。 我只是想知道哪種解決方案最高效:加載HTML模板或使用DOM函數構建它們?模板性能:靜態文件vs硬編碼DOM

這兩者都有優點/缺點,還有很多其他因素可以關閉它們中的任何一個:例如,很明顯DOM編碼的HTML不像修改靜態HTML那樣容易修改。事實:有很多因素會影響性能(磁盤IO,內存,CPU,錯誤代碼等)。

問題:使用DOM編碼的HTML(片段)作爲模板是否是一種很好的做法?或者在這種情況下,我會很好的字符串連接?

感謝,Fabrik公司

回答

0

模板相比速度更快,在我的測試案例(其中,導致我現在很想念)通過DOM創建HTML。

[編輯]:澄清到OP:

正如我所說的,這是很久以前(6-8個月,我認爲),當我跑測試,我已經失去了效果。那麼,因爲你只需要從磁盤加載數據,它不會產生太大的差別。在我的測試中,每頁有100個變量。這需要DOM插入100次元素或模板化100次。據我所知,結果顯示比例爲1:1.35(運行時間)有利於模板。希望這可以幫助。

+0

我的第一個賭注是磁盤io比一些cpu-週期更昂貴,以生成相同的數據。你能隨時展示一些結果嗎?看看這些測試用例是如何構建的,以及它們之間的差異有多大,這將會很有趣。 – fabrik 2010-09-06 12:19:54

+0

@Fabrik,答案已更新。 – shamittomar 2010-09-06 12:30:25

+0

謝謝你的解釋。據我瞭解你的模板是一個複雜的HTML頁面而不是一個片段(例如像表格行)。我最初的好奇心特別是關於小碎片:是否值得保存/加載這些碎片而不是直接生成? – fabrik 2010-09-06 12:38:43