users@grizzly.java.net

Re: CommetEngine processing chain

From: Jeanfrancois Arcand <Jeanfrancois.Arcand_at_Sun.COM>
Date: Thu, 16 Apr 2009 13:07:01 -0400

Salut,

felixx wrote:
> Hi all,
> I've noticed that CommetEngine is involved in ALL the requests hitting a web
> app. Any request to any servlet or even to get static resources (images)
> engages the comet engine.

Yes.

  For example for images i see
> handle(AsyncProcessorTask apt) being invoked and the topic is
> 'myAppPath/images/xyz.png'.
> The request is not suspended but still, is this the normal behavior?

Yes, but if you enable file caching, the static resources will no longer
goes that path.

I'm
> thinking about the performace hit if all the requests (static resources
> included) are served via this chain. Is it possible to register the comet
> chain only for a specific path pattern and the do the context registration?

No, but the overhead is really low. The reason why it gets there is
because Grizzly has no way to know a request is comet enabled or not.
But a possible optimization I can do is to write a custom AsyncHandler
[1] (this is the one that control AsyncFilter) that can filter based on
some configuration/property. Would that help? It pretty simple to write
so just file and RFE here:

https://grizzly.dev.java.net/issues/

and I will work on it.

Thanks

-- Jeanfrancois

[1]
https://grizzly.dev.java.net/nonav/apidocs/com/sun/grizzly/arp/AsyncHandler.html





> Thanks.