]> source.dussan.org Git - vaadin-framework.git/commit
Cache reference diffstate values (#15561)
authorLeif Åstrand <leif@vaadin.com>
Sat, 10 Jan 2015 11:36:51 +0000 (13:36 +0200)
committerVaadin Code Review <review@vaadin.com>
Mon, 12 Jan 2015 08:24:53 +0000 (08:24 +0000)
commit3f27e02f121c0a39b217532afcf9530bfd2caba7
tree6ea5ebd67de5b7839ab80026ef1b7e432087b74a
parent65904ffbdebc861a45c1b504d244d02a12f4561b
Cache reference diffstate values (#15561)

Benchmarked with the "Set 40 panels as content" action in
BasicPerformanceTest. This is really a worst case scenario since it
doesn't do anything else than create lots of components, whereas more
common use cases would spend more time updating existing components or
executing business logic instead.

Without this patch, each action spent about 6 ms creating reference
diffstate values, making up about 20% of the total processing time. With
the patch applied, the time (including the new map lookup) was reduced
to around 0.2 ms and the total processing time was also reduced
accordingly.

Change-Id: If22a73b591b87793c78cb360bcfa8e030f003730
server/src/com/vaadin/server/LegacyCommunicationManager.java