joseph_cgi Posted November 28, 2006 Share Posted November 28, 2006 We are considering moving our application from WebFocus to JasperReports and had a question about thread safety and performance. We expect approximately 30-40 users to issue the same report queries (that may return large volumes of data) with different parameters at nearly the same times in the month. As their deadlines bear down on them, they may even execute the same reports many times, simultaneously with other users. Given this scenario, the questions we have are: - Is Jasper Reports thread safe? Do we risk corruption of report queries? Deadlock?- Does Jasper Reports serialize thread access to report output in any way? Or will it process the same report for multiple users simultaneously?- If there are scaling issues, what are some of the recommended ways to scale the engine? j. Link to comment Share on other sites More sharing options...
Teodor Danciu Posted December 12, 2006 Share Posted December 12, 2006 Hi, I will try to answer your concerns: - JasperReports is thread safe. The same in-memory report template could be used simoultaneously by multiple threads. By default, JasperReports uses multi-threading when dealing with subreports, but if this is not wanted in some environments, multi-threading could be turned off and Javaflow continuations are used instead; - A separate report generating process will run for each of the users requests; - To optimize memory consumption in case large datasets are processed, the virtualizer could be used. This allows storing temporary document data on the file system to free up memory; I hope this helps.Teodor Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now