Dmitry Kudrenko | 13 May 14:42

Re[2]: Long time processing in the DwrServlet.service()

Greetings, Mike

MW> I would suggest you try your application in a regular servlet engine,
MW> like f ex Tomcat or Jetty, and report back if you still have any 
MW> problems. Reproducing your error in a "standard" environment will make
MW> it much easier for other developers on the list to help you.

Certainly it will be good, but unfortunately, I have not chance to do
it easily. And it is why I ask you for ideas (potential solutions)
about reason why/where DwrServlet keeps (can keep) request for a long
time. And have not chance to debug it because of it is hard to
reproduce this issue locally (with good network connection).

I have no ideas how to localize the problem in a short term and why
processing time the same with Comet request maximum connection time.

Maybe it is question to the developer mailing list, not sure...

MW> BTW: What is your impression of Simple framework? (There doesn't seem
MW> to have been much activity the last years.)

Simple framework was an engine of the original application I started
to support/rebuild several months ago. So, Simple framework was
inherited from previous developers. But, as for me, it is a good
solutions for project where you have a lot of _small_ requests to
server. For example, JBoss creates separate thread for every
connection and it is rather expensive operation if you have a lot of
small AJAX requests from 1000 and more clients.

Simple framework provides the article with comparisons of Simple's
vs Apache and Resin. http://www.simpleframework.org/performance/comparison.php

And it is not bad approach for Web2.0 applications where you have one
main page and other content is generated dynamically. And when you
need to provide high interactively with server using AJAX requests.

Also, about Simple framework community: Mailing list is not very
active. But you can receive the helpful answer/suggestion for your
question rather quickly.

Thank you

>> I am using DWR with Simple framework
>> (http://www.simpleframework.org/). It has own Simple API which is
>> different from servlet-api. But I use Adaptor pattern to convert
>> simple.Request to HttpServletRequest and HttpServletResponse 
>> to simple.Response.
>> 
>> Also I am using Reverse Ajax in my web application.
>> 
>> Simple request handler receives request and forwards it to the DWR
>> Servlet using DwrServlet.service(request, response) method. DWR
>> Servlet configured properly and it works.
>> 
>> Sometimes I have strange behavior: request is being processed 
>> 1 minute but
>> method on the class mapped to javascript works only 10 msec.
>> 
>> I received this statistic wrapping DwrServlet.service with timer1 and
>> adding timer2 to the my Java class.
>> 
>> timer1.maximum value = 1 minute (The maximum time is the same 
>> as maximum time for Reverse Ajax request)
>> timer2.maximum value = 10 msec.
>> 
>> This situation is hard to reproduce in my local version of the
>> application. But I have this statistic often in the live system. So it
>> is hard to debug it.
>> 
>> It seems the number of these errors depends on browser (can't
>> reproduce it with FireFox) and connection quality. (Not sure).
>> 
>> Have you idea where the request can be 60 sec in the
>> DwrServlet.service?
>> 
>> Thanks in advance.
--

-- 
Best regards,
Dmitry Kudrenko
ARDAS group (http://www.ardas.dp.ua)

Gmane