Title: Performance Improvements

The performance issues highlighted in bug #1176957 have now been fixed. I have changed the status of this bug to closed.

For those interested in the details.....

- Jon improved the wicket.utils.string.Strings.replaceAll(String, String, String) method - It's now faster than any other implementation I can find on the Internet! All calls to java.lang.String.replaceAll(String, String) have been changed to use this method where appropriate.

- Jon rewrote the wicket.util.io.Streams.copy(InputStream, OutputStream) method to use bulk reading and writing via a byte[] buffer (and hence nio) as opposed to byte by byte copy.

- Johan added browser caching support for resources.


For Hangman, the following performance improvements are seen:
Initial Game (play the game and generate all of the dynamic images): new code is 34% faster!
Second Game (play the game using cached images): new code is 66% faster!


Looking through the profiler output there now appears to be no obvious 'hotspot' points within the Wicket code.
I will continue to do some further analysis to see if there are any other methods that could be optimised for even better performance.

Regards,
Chris

Reply via email to