Hi, I think you need to do some work to aggregate these thousands of filters into tens filters. Current Camel doesn’t has this kind of aggregation tools, but I think you may try to look at the drools[1] to see if it can apply these filters for you.
[1]http://www.drools.org/ -- Willem Jiang Red Hat, Inc. Web: http://www.redhat.com Blog: http://willemjiang.blogspot.com (English) http://jnn.iteye.com (Chinese) Twitter: willemjiang Weibo: 姜宁willem On November 12, 2014 at 10:13:54 PM, Chris K (csa...@gmail.com) wrote: > Hi all, > > I'm writing an application that aggregate data from various sources. > Data item comes with many attributes. Users interested with the data > can create filters, to filter data based on data attributes > > Example : data1 = { 'first_name':'Jimmy', 'last_name':'kurnia', > 'title':'engineer', 'country':'Singapore',.... } > > Say a user, user1, interested with data with these attributes : > {'country':'Singapore'} and salary > 50000 > > So every time a new data comes in, it has to go through all filters. > If it matches the filter, the data would be sent in real time to the > user by email > > The problem : if, let say, there are 10K users, creating 10K filters, > then 1 data item has to go through 10K filter. Is this something that > can be solved efficiently using Message router pattern in Camel ? > > If yes, how can I implement the solution using message router pattern > in Camel ( pseudocode or sample would be appreciated ) > > regards, > Chris >