1

I would like to ask around for your experiences. We fought some major performance issues in the last few month. When users worked with our JSF / PrimeFaces web application for a longer time, the runtime performance was getting slower and slower. Here is our environment:

  • JBoss Application Server (EAP 6.2.2)
  • Java 7 (45)
  • JSF 2.1.25
  • PrimeFaces 3.5.3

After some time of researching, we found out that the CodeCache of the servers JVM (default 48MB) was nearly full. And after restarting the application server the performance was very good again. We could see that the size of the CodeCache was increasing about 3-4 MB per day. And when it reaches the cache limit the performance is dropping.

We used the JVM parameter -XX:+UseCodeCacheFlushing at first. But it doesn't seem to be flushing enough memory. So we decided to increase the code cache size to 128MB (-XX:ReservedCodeCacheSize=128m). Now the performance is good for a longer time, but we are afraid that we only postponed the problem.

So I just want to ask you guys if anyone is facing similar problems.

  • Is it ok that the CodeCache usage is steadily increasing?
  • What size of CodeCache size is recommended?

I hope could have a chat about this. Perhaps anyone could give us a hint.

Thanks in advance, SlimShady

SlimShady
  • 185
  • 3
  • 11
  • CodeCache is not the problem. The problem is caused by Mojarra, it has been reported before by other users and the cause is there is a problem with the state saving algorithm. Try use MyFaces. This article provide useful tips about JSF performance [Understanding JSF 2.0 Performance – Part 3](http://content.jsfcentral.com/c/journal/view_article_content?cmd=view&groupId=35702&articleId=73398&version=1.8#.VErzWha7hJg) – lu4242 Oct 25 '14 at 00:51

0 Answers0