activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hiram Chirino" <>
Subject Re: Message Filtering
Date Fri, 07 Jul 2006 15:55:41 GMT
HI Stephs,

We do a have some initial work do optimizing selectors for when many
selectors are being used against the same destination.  All the selector
evaluation logic is in the org.apache.activemq.filter package.

We did some initial experiments with a MultiExpressionEvaluator which
allowed caching results of common expressions in multiple expression trees.
ActiveMQ we using a different threading model at the time that was created..
It needs to get update so that it works with the simpler threading model we
have now.

Basically before we evaluate a message against a set of selectors, a
MessageEvaluationContext is created so that results of the expression
evaluations can be cached there.  After all the selectors are evaluated, the
context is cleared.

So... we need more help in this area to make our selector more efficient..
Are you volunteering?

On 7/7/06, stephans <> wrote:
> Hi folks,
> i am currently writing my master thesis on improving filter performance in
> publish/subscribe environments. Can anyone of you outline how filtering is
> done in activemq, i.e. if you are using the counting algorithm or more
> advanced approaches like building a matching tree from subscriptions like
> mentioned in the paper by aguilera/strom or something like that?
> I would appreciate any answers from you.
> Greetings,
> Stephs
> --
> View this message in context:
> Sent from the ActiveMQ - Dev forum at



  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message