Hi,
I am using Linux rehhat with 32GB RAM and tomcat on it.
I am using jasper to create pdf and excel report with 50K rows , database queries are heavy takes around 1-2 minutes to excecute on linux server with 32 GB RAM.
Report generates fine on start up however when around 30-40 reports generated then server stop responding or become extream slow.
RAM on tomcta server consumed almost 90% , I release the RAM and restart the tomcat to resolve the issue.
Pls help....
Same issue with Production with 64GB ram both on Database and Tomcta server.
Thanks,
Jitendra
2 Answers:
Are you running Tomcat and your database on the same server? If so, you shouldn't - it's a bad practice to run an application server and database on the same pserver when performance is needed.
How are you measuring your RAM consumption? Have you set your jvm to use 32 GB? If not, tomcat is just using the default max memory which isn't too much. On Red Hat, create a setenv.sh file in tomcat/bin and set JAVA_OPTS to the -Xms and -Xmx
BTW, if several users are executing the report at once, JasperReports Server performance becomes very bad when executing report directly from the Repository. Be sure to schedule you reports. It's best to just create an front end page on HTML server and use the APIs to do an async report execution.
If you really need performance, just don't use JasperReports Server and write your own apps to create a report using JasperReports library. I've found JasperReports Server uses too much memory.
hi hozawa,
thanks for reply.
i am using two separate server for tomcat and db , both are high end server , 32 GB RAM ,64BIT,8 CPU on Linux OS.
I am measuring RAM by linux command , JVM is setup to 4GB (I guess u cant allocate more than it).
JAVA_OPTS to the -Xms and -Xmx are setup TO 1 GB and 4GB.
BTW, if several users are executing the report at once, JasperReports Server .......
not many users accessing server but 2-3 users generating many reports for testing.
What version of JasperReports Server are you using? Exactly what errors, if any, are you getting?