2013-07-31 73 views
7

我們正在使用運行在AIX 6.1.0.0上的所有Grails 2.2.4,WebSphere 8.0.0.5。 websphere的是使用IBM JDK:AIX上生產中動態緩存的GSP重新加載

的Java(TM)SE運行時環境(建立pap6460_26sr3ifix-20121005_02(SR3 + IV27268 + IV27928 + IV28217 + IV25699))

IBM J9 VM(建2.6,JRE 1.6 0.0 AIX ppc64-64 20120919_122629(JIT啓用,啓用AOT)

J9VM - R26_Java626_SR3_iFix_1_20120919_1316_B122629

JIT - r11.b01_20120808_24925ifx1

GC - R26_Java626_SR3_ iFix_1_20120919_1316_B122629 J9CL - 20120919_122629)

JCL - 20120713_01

的問題是使用:

grails.gsp.enable.reload = true 
grails.gsp.view.dir="/path/to/gsp/views" 

慢,我的意思是一個很好的20秒內呈現一個小GSP。有趣的是,在我們的本地開發環境中需要2秒。

我們已經隔離了這個問題,它有一個控制器,除了在空白的GSP上調用渲染(..)而沒有任何內容外,什麼都不做,所以我只能假定它是編譯的,但我可能是錯的。

有沒有人遇到過渲染GSP非常慢或者有任何建議的其他實例,這可能是AIX上某種奇怪的JDK問題?

除了賞金之外,誰會正確回答這個問題就可以得到免費的華夫餅。

編輯剛纔注意到這一點:有三個環境具有相同的WAS配置和設置,其中一個工作正常,所以肯定是某種環境問題。

+0

你可以嘗試在/ path/to/gsp/views上做一個dd測試嗎? – JavaDev

+0

當你說當地的開發環境時,是在本地的WAS環境還是在Grails中嵌入Tomcat? – dmahapatro

+0

我懷疑你已經看過記憶的角度,但是在內存壓力下我遇到了類似的古怪的情況。一個漫長的,可能相關的討論在這裏:http://grails.1312388.n4.nabble.com/Grails-performance-restriction-td4642061.html特別是,格雷姆的回覆在2013年3月5日; 5:48 am –

回答

1

我同意你的懷疑,這是編譯時間。也許你grails.gsp.view.dir很慢 - 也許是一個網絡文件系統?

不幸的是,真正的答案是不能使GSP在生產中重新加載。 這顯然意味着開發方便,並不打算在生產中表現良好。

+0

不幸的是,我們別無選擇,因爲要求是允許人們在飛行中更改它。 –

+1

聽起來像你需要CMS – GreyBeardedGeek

+0

你可以嘗試運行相同的啓用重新加載,但只使用tomcat?我猜這是與WAS相關的問題 – JavaDev

0

我們在我們的應用程序上試圖在Gsp頁面上呈現Birt報告(在prod服務器上使用了5分鐘,我們使用Tomcat和Mysql)時出現同樣的問題,而不是回答,而是您可能需要的建議使用grails緩存插件,該插件可以根據您的需求緩存gsp頁面。

grails.org/plugin/cache‎

+0

我們實際上已經在使用這個了 –

1

確保的sitemesh被預處理

grails.views.gsp.sitemesh.preprocess=true 

而且我懷疑這是鎖定問題,而不是編譯的問題。

至少減少這一問題設置以下CONFIGS

高的東西取決於您的舒適。也許每個小時?

如果你的文件太快,你需要通過

grails.gsp.reload.granularity= Time in milliseconds. 

限制,以降低粒度由

grails.reload.excludes 

grails.reload.includes 
被重新加載的類的數量變化的最後修改時間

還記得視圖路徑必須以斜槓結尾。我沒有看到你提供的例子。

1

雖然我不能告訴你問題的原因是什麼,但我可以指出一個可以幫助您查看性能問題的工具。

Grails Miniprofiler插件是用於檢查端到端性能,一直到視圖(這是您相信您的問題的地方)的絕佳工具。

在我的一個項目上的一些GSP上,我驚訝地發現一些觀點對於SQL調用(通過延遲加載)有多沉重。

您可能懷疑問題出在哪裏,也許您在該特定平臺上遇到了一個模糊的錯誤,但具有很多數字來指出瓶頸是非常有用的。

對於它的價值,我沒有看到你在我的任何OS /環境中描述的問題。但是我確實記得在試圖部署到JBoss 6.1時遇到了嚴重的痛苦(因爲已經解決了),所以我對Grails在某些環境中可能會遇到的問題非常敏感。

祝你好運......

Grails Miniprofiler plugin