#485: Topic-based pub/sub for IResourceChangeListener
-------------------------+-------------------------------------------------
  Reporter:  olemis      |      Owner:  nobody
      Type:              |     Status:  new
  enhancement            |  Milestone:
  Priority:  major       |    Version:
 Component:  trac core   |   Keywords:  gsoc gsoc2013submitted
Resolution:              |  IResourceChangeListener performance
-------------------------+-------------------------------------------------
Changes (by jdreimann):

 * keywords:  gsoc IResourceChangeListener performance => gsoc
     gsoc2013submitted IResourceChangeListener performance


Old description:

> Resource listeners often will watch events for a limited , well-known set
> of resource realms (e.g. `ticket` + `attachment` ) .
>
> The current dispatching strategy (i.e. `match_resource`) is mostly
> [http://en.wikipedia.org/wiki/Publish–subscribe_pattern#Message_filtering
> content based] . It behaves in `O(r * l)` order of magnitude . This might
> lead to a lot of extra (unnecessary) overhead .
>
> A performance improvement could be to allow listeners to register to
> dedicated realm channels (i.e.
> [http://en.wikipedia.org/wiki/Publish–subscribe_pattern#Message_filtering
> topic-based filtering]) , thus turning the dispatch algorithm into `O(l)`
> , at least when it is a ok to do so ;)
>
> PS: We shall not loose the current content-based filtering capabilities ,
> so in advance I advocated using a hybrid strategy .

New description:

 Resource listeners often will watch events for a limited, well-known set
 of resource realms (e.g. `ticket` + `attachment` ).

 The current dispatching strategy (i.e. `match_resource`) is mostly
 [http://en.wikipedia.org/wiki/Publish–subscribe_pattern#Message_filtering
 content based]. It behaves in `O(r * l)` order of magnitude. This might
 lead to a lot of extra (unnecessary) overhead.

 A performance improvement could be to allow listeners to register to
 dedicated realm channels (i.e.
 [http://en.wikipedia.org/wiki/Publish–subscribe_pattern#Message_filtering
 topic-based filtering]), thus turning the dispatch algorithm into `O(l)` ,
 at least when it is a ok to do so ;)

 PS: We shall not loose the current content-based filtering capabilities ,
 so in advance I advocated using a hybrid strategy.

--

Comment:

 [https://issues.apache.org/jira/browse/COMDEV-95 Relevant GSoC submission]
 in COMDEV Jira project.

-- 
Ticket URL: <https://issues.apache.org/bloodhound/ticket/485#comment:2>
Apache Bloodhound <https://issues.apache.org/bloodhound/>
The Apache Bloodhound (incubating) issue tracker

Reply via email to