<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    云自無(wú)心水自閑

    天平山上白云泉,云自無(wú)心水自閑。何必奔沖山下去,更添波浪向人間!
    posts - 288, comments - 524, trackbacks - 0, articles - 6
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
    前一段時(shí)間有反映說(shuō)是一個(gè)使用了struts2的生產(chǎn)系統(tǒng)的頁(yè)面顯示速度太慢。登錄后發(fā)現(xiàn)確實(shí)如此,于是進(jìn)行了一番性能調(diào)優(yōu)的研究和測(cè)試。
    一,根據(jù)struts2官方的性能調(diào)優(yōu)說(shuō)明進(jìn)行了一些參數(shù)的修改。
    http://struts.apache.org/2.x/docs/performance-tuning.html
    http://cwiki.apache.org/WW/performance-tuning.html

    Turn off logging and devMode.(關(guān)閉logging和Devmode)
    這個(gè)當(dāng)然沒(méi)問(wèn)題,但是全部關(guān)閉logging不現(xiàn)實(shí),我只是關(guān)閉了struts2相關(guān)package的logging

    Do not use interceptors you do not need.
    把struts.xml中不需要的interceptor統(tǒng)統(tǒng)刪除

    Use the correct HTTP headers (Cache-Control & Expires).
    不確定應(yīng)該如何修改

    Copy the static content from the Struts 2 jar when using the Ajax theme (Dojo) or the Calendar tag.
    關(guān)于這點(diǎn),后面會(huì)提到

    Create a freemarker.properties file in your WEB-INF/classes directory.
    照做

    Create the freemarker.properties file and add the following setting (or whatever value you deem fitting):
    template_update_delay=60000
    照做

    Enable Freemarker template caching
    As of Struts 2.0.10, setting the property struts.freemarker.templatesCache to true will enable the Struts internal caching of Freemarker templates. This property is set to false by default.
    照做

    進(jìn)行上述修改后,發(fā)現(xiàn)頁(yè)面打開(kāi)的速度并沒(méi)有明顯的提高.

    二,此時(shí)我已經(jīng)基本鎖定網(wǎng)頁(yè)打開(kāi)速度慢的原因與ajax(或者說(shuō)是dojo)有關(guān)。因?yàn)閐ojo的js庫(kù)大概有450K左右,先嘗試使用gzip壓縮javascript,減小傳輸量,看能否加快頁(yè)面的加載速度
    在Tomcat的server.xml的connector中添加如下配置,激活gzip功能
     compression="on"
     compressionMinSize="2048"
     noCompressionUserAgents="gozilla, traviata"
     compressableMimeType="text/html,text/xml,text/javascript,application/x-javascript,application/javascript"
    進(jìn)行上述修改后,發(fā)現(xiàn)頁(yè)面打開(kāi)的速度還是沒(méi)有明顯的提高.

    三,經(jīng)過(guò)上述兩個(gè)實(shí)驗(yàn),覺(jué)得應(yīng)該是struts2所封閉的dojo的性能問(wèn)題了。于是引入JQuery.
    JQuery的js文件最小是55K, gzip后應(yīng)該更小,頁(yè)面的響應(yīng)速度明顯改善(一個(gè)數(shù)量級(jí)以上的提高),主要原因在于與服務(wù)器交互的處理上極大地提升了效率。而且頁(yè)面處理代碼更加簡(jiǎn)潔明了。

    最后,我刪除了所有的<s:head theme="ajax"/>和 <s:head/>(如果頁(yè)面中加入<s:head />,那么在Struts2生成的html中后包含dojo.js),使用JQuery來(lái)完成所有的Ajax和javascript功能。




    評(píng)論

    # re: 我的struts2項(xiàng)目性能調(diào)優(yōu)三步曲  回復(fù)  更多評(píng)論   

    2008-07-01 14:38 by Greco
    我在使用struts ajax 的時(shí)候也發(fā)覺(jué)慢的問(wèn)題
    然后用Firebug查看發(fā)現(xiàn)加載的js太多,而且有些不是必須的
    所以按照yahoo ui 的15條軍規(guī)來(lái)看
    這絕對(duì)是影響頁(yè)面速度的關(guān)鍵

    # re: 我的struts2項(xiàng)目性能調(diào)優(yōu)三步曲  回復(fù)  更多評(píng)論   

    2008-07-01 23:42 by YYX
    struts2 的ajax主題很失敗,我和LZ一樣也是開(kāi)始用了,后來(lái)發(fā)現(xiàn)不但影響速度而且效果也不行,轉(zhuǎn)而用jquery自己完成ajax功能

    # re: 我的struts2項(xiàng)目性能調(diào)優(yōu)三步曲  回復(fù)  更多評(píng)論   

    2008-07-02 07:33 by 云自無(wú)心水自閑
    其實(shí)struts2另外一個(gè)性能的瓶頸在于ognl,但是我現(xiàn)在還沒(méi)有什么好方法來(lái)解決

    # re: 我的struts2項(xiàng)目性能調(diào)優(yōu)三步曲  回復(fù)  更多評(píng)論   

    2008-07-02 07:49 by 云自無(wú)心水自閑
    ognl已經(jīng)升級(jí)到2.7,據(jù)稱性能有顯著提高,但是與MVEL相比,還是有一個(gè)數(shù)量級(jí)的差別。 :(

    # re: 我的struts2項(xiàng)目性能調(diào)優(yōu)三步曲  回復(fù)  更多評(píng)論   

    2008-07-02 07:52 by 云自無(wú)心水自閑
    這是TSS上的OGNL與MVEL的性能對(duì)比的文章

    # re: 我的struts2項(xiàng)目性能調(diào)優(yōu)三步曲  回復(fù)  更多評(píng)論   

    2008-07-02 07:52 by 云自無(wú)心水自閑
    http://www.theserverside.com/news/thread.tss?thread_id=46083

    # re: 我的struts2項(xiàng)目性能調(diào)優(yōu)三步曲  回復(fù)  更多評(píng)論   

    2009-10-27 14:23 by fengye_nothing
    aaaaaaaaaaaaa
    主站蜘蛛池模板: 国产亚洲免费的视频看| 亚洲香蕉久久一区二区| 亚洲综合日韩久久成人AV| 国产精品久久久久影院免费| 插B内射18免费视频| 成人性生交视频免费观看| 免费无码黄动漫在线观看| 最近2019中文字幕mv免费看| 男女啪啪永久免费观看网站| 色www永久免费视频| 国产一级一片免费播放i| 亚洲Aⅴ无码一区二区二三区软件| 国产一区在线观看免费| 亚洲精品一级无码鲁丝片 | 国产伦精品一区二区免费| 亚洲视频在线免费| 国产一级婬片A视频免费观看| 久久国产乱子精品免费女| 最近2019免费中文字幕视频三| 亚洲网站免费观看| 成熟女人特级毛片www免费| 国产zzjjzzjj视频全免费| 久久久久国产成人精品亚洲午夜 | 日本牲交大片免费观看| 亚洲精品久久久www| 国产亚洲婷婷香蕉久久精品 | 国产乱子伦精品免费女| 在线观看亚洲精品福利片| 亚洲AV日韩精品久久久久久| 亚洲伊人久久大香线焦| 亚洲AV无码一区二区三区网址| 一级毛片a免费播放王色| 免费看男人j放进女人j免费看| 精品香蕉在线观看免费| 免费国产成人午夜私人影视| 中国亚洲女人69内射少妇| 亚洲日本国产精华液| 亚洲国产精品自在自线观看| 特a级免费高清黄色片| 午夜网站在线观看免费完整高清观看| 美女视频黄免费亚洲|