Uploaded image for project: 'Tapestry 5'
  1. Tapestry 5
  2. TAP5-522

Reduce memory footprint by sharing binding descriptions

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 5.1.0.0
    • Fix Version/s: 5.1.0.0
    • Component/s: tapestry-core
    • Labels:
      None

      Description

      In very large Tapestry deployments, a significant amount of memory is consumed by description object attached to Binding instances. Often, many many identical but separate strings are stored. Interning those strings (reducing duplicate content strings to a single String instance) would alleviate much of that issue.

        Activity

        Hide
        andyhot Andreas Andreou added a comment -

        Nice to see you run (& fixed) into this... In some early 4.1.X versions that was also the case and
        I think i had seen something like 15% of all memory consumed on that!

        Show
        andyhot Andreas Andreou added a comment - Nice to see you run (& fixed) into this... In some early 4.1.X versions that was also the case and I think i had seen something like 15% of all memory consumed on that!
        Hide
        hlship Howard M. Lewis Ship added a comment -

        Hopefully this will help ... its very important to me that objects have useful toString() implementations (useful for the debugger, or for logging output). Hopefully this kind of measure will keep that aspect without the memory consumption.

        Show
        hlship Howard M. Lewis Ship added a comment - Hopefully this will help ... its very important to me that objects have useful toString() implementations (useful for the debugger, or for logging output). Hopefully this kind of measure will keep that aspect without the memory consumption.

          People

          • Assignee:
            hlship Howard M. Lewis Ship
            Reporter:
            hlship Howard M. Lewis Ship
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development