Hi Stéphane,

On which OS/platform is the server running? Is it running in "headless" mode?

The image has roughly 1500 points which are displayed using a symbol stored in a GIF image.

I'm confused by this statement. Are you saying that the original SVG document is being converted into a GIF image on the server-side? How large is the generated image in pixels?

How do you create the image that the SVG content is rendered into? Is it something like "new BufferedImage()", or something else?

JProfiler shows that the 15 threads are blocked most of the times. Further investigations show that they need a lock somewhere in Graphics2D.drawImage.

Do you have a stack trace or something else that shows which lock is being used in the call stack? In your subject you mention Graphics2D.fill(), but here you say Graphics2D.drawImage()...

These kinds of applications should scale well to many threads without blocking, so the answers to the above questions may uncover some problem in your application.

Thanks,
Chris

On Dec 21, 2006, at 6:15 AM, [EMAIL PROTECTED] wrote:
Hi,

I am currently profiling a server-side application which generates images based on a SVG document. The image has roughly 1500 points which are displayed using a symbol stored in a GIF image.

The profiling test uses 15 clients, requesting exactly the same image on the server.

JProfiler shows that the 15 threads are blocked most of the times. Further investigations show that they need a lock somewhere in Graphics2D.drawImage.

If we return only the SVG document to the client (i.e. we bypass the image generation) all goes well.

Does anyone already experienced this? Anyone has reccomendations or tips&tricks regarding the server-side generation of images in multithread?

Tested with JDK 1.4.2, 1.5 and 1.6

Thanks,
Stéphane
[Message sent by forum member 'stephanenicoll' (stephanenicoll)]

http://forums.java.net/jive/thread.jspa?messageID=188043

====================================================================== ===== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA2D-INTEREST". For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA2D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to