> From: David kerber [mailto:[email protected]]
> The tomcat application simply takes the post request,
> does a checksum verification of it, decrypts the
> lightly-encrypted data,
> and writes it to a log file with the timestamps and site identifiers I
> mentioned above. Pretty simple processing, and it is all inside a
> synchronized{} construct:
>
> protected synchronized void doPost(HttpServletRequest request,
> HttpServletResponse response )
> throws ServletException, IOException {
> synchronized ( criticalProcess ) {
> totalReqCount++;
> dailyReqCount++;
> processRequest( request, response, false );
> }
> }
Doesn't the "synchronized" in the above mean that you're essentially
single-threading Tomcat? So you have all this infrastructure... and that sync
may well be the bottleneck.
You could detect this by taking a thread dump in the middle of the day, and
seeing whether a significant number of threads were waiting on either of your
sync objects. If there are a significant number, consider re-engineering this
critical piece of your application to be multi-threaded :-).
- Peter
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]