2011-06-10 110 views
0

我有一個webscript在用javascript編寫的露天。在這個webscript中,我有很多遞歸(foreach循環)來生成由freemarker模板用來構建JSON的值。問題是JavaScript非常慢(3700毫秒)。我可以通過在freemarker中迭代獲得相同的結果,但是我不知道是否值得在freemarker中編寫複雜循環的麻煩,因爲我不知道它是否更快,而且我不知道如何對它進行基準測試。遞歸的速度更快:javascript服務器端還是freemarker?

任何人都知道如果freemarker比javascript更快或者有誰知道如何基準freemarker?

+0

也許有些代碼可以澄清你的問題? – KooiInc 2011-06-10 16:15:51

回答

3

前些日子有人說他FreeMarker的基準與GSP FreeMarker的-devel郵件列表上提到的(Groovy服務器頁面?)。也許你可以重用他的一些基準測試。他的mailing list posting有一些鏈接。

2

如果您想與forEach進行比較,則會顯示一些基準here

您可能需要設置自己的標杆jsperf

1

如果性能問題,您可以嘗試編寫您的web腳本Java instead。這並不難,而且有some examples

其中一個例子甚至展示瞭如何從Java輸出JSON,跳過freemarker圖層,這可能會幫助你,如果你想讓它運行得儘可能快。

+0

這聽起來很奇怪,因爲我們僱傭了一些戶外「老年人」,他們聲明JavaScript比java快。在你的expirience java比JavaScript快? – 2011-06-12 19:20:08

+0

編寫JavaScript可能比編寫Java更快,這是大多數人傾向於選擇JS進行擴展的原因之一。爲了運行它,我期望Java更快。有一個原因,Alfresco的核心是用Java編寫的! – Gagravarr 2011-06-13 00:43:42