Uploaded image for project: 'Struts 2'
  1. Struts 2
  2. WW-3467

Improve performance for page rendering by refactoring freemarker cache

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Blocker
    • Resolution: Fixed
    • 2.1.5, 2.1.6, 2.1.8, 2.1.8.1
    • 2.2.1
    • None
    • None
    • Patch, Important

    Description

      currently,struts2 have two inconsistent options about freemarker cache
      1.<constant name="struts.freemarker.mru.max.strong.size" value="250" />
      this option will used by freemarker.cache.MruCacheStorage

      2.<constant name="struts.freemarker.templatesCache" value="true" />
      this option will use a internal ConcurrentHashMap in FreemarkerTemplateEngine but not freemarker native cache
      my patch deprecated this option and clean those code

      also add a option to change default update cache interval (5 seconds)
      <constant name="struts.freemarker.templatesCache.updateDelay" value="1800" />

      BTW:set devMode to true will disable cache and update immediately

      using cache will boost great performance, reduce 400ms to 20ms render a xhtml theme form and some textfield in my test .

      I think https://issues.apache.org/jira/browse/WW-2808 could closed by adding a wiki page about how to use freemarker cache

      Attachments

        1. patch.txt
          11 kB
          Yanming Zhou

        Issue Links

          Activity

            People

              lukaszlenart Lukasz Lenart
              quaff Yanming Zhou
              Votes:
              2 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: