Return-Path: Delivered-To: apmail-lucene-java-user-archive@www.apache.org Received: (qmail 15009 invoked from network); 20 May 2009 13:42:35 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 20 May 2009 13:42:35 -0000 Received: (qmail 27942 invoked by uid 500); 20 May 2009 13:42:45 -0000 Delivered-To: apmail-lucene-java-user-archive@lucene.apache.org Received: (qmail 27904 invoked by uid 500); 20 May 2009 13:42:45 -0000 Mailing-List: contact java-user-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: java-user@lucene.apache.org Delivered-To: mailing list java-user@lucene.apache.org Received: (qmail 27862 invoked by uid 99); 20 May 2009 13:42:44 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 20 May 2009 13:42:44 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of aminmc@gmail.com designates 74.125.78.25 as permitted sender) Received: from [74.125.78.25] (HELO ey-out-2122.google.com) (74.125.78.25) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 20 May 2009 13:42:36 +0000 Received: by ey-out-2122.google.com with SMTP id 22so135817eye.53 for ; Wed, 20 May 2009 06:42:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:date:message-id:subject :from:to:content-type; bh=WnLTnMQtOpQj1K1aDz4t9lhdMDLKmnYx2aVyStpPyyQ=; b=VfUUaT0pJ5jMZ3jA+ybZwtZV6nn9G5hyNcqg3MrJEbuQr25KBTqLEGC6Zq0T1O1oc9 n5ABODBz3CJYS6IXo4BmGpXNYJvwZifabMfsiWVlyz4pxJBXvE5lA7qSQpvnm5pCrYQz I5j1eXn5IcOPzF24U/hd0vgxizjE2umeQGzSE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=GRzpqHVQuaf7syOy4gEM77+Tye3pULSH0SFFpT+/VoIKlJBm6vRe1eONC26m3llIMN uN8vMnEDyw6Jhw7OQrZmtyXAfvhdI13sCINPpo8ze/D4bxyaEmDSYSZoVujqdiTIcT5/ tYq3DOJJ74Oknr6Do5OW5bYmeC0cfGHRJPrQQ= MIME-Version: 1.0 Received: by 10.216.50.198 with SMTP id z48mr290884web.227.1242826934625; Wed, 20 May 2009 06:42:14 -0700 (PDT) Date: Wed, 20 May 2009 14:42:14 +0100 Message-ID: <6f4104d80905200642l6f02ab0fsfa2742152f0782f7@mail.gmail.com> Subject: Performing Asynchronous Search From: Amin Mohammed-Coleman To: "java-user@lucene.apache.org" Content-Type: multipart/alternative; boundary=0016e6dd974ef4a76a046a5831bf X-Virus-Checked: Checked by ClamAV on apache.org --0016e6dd974ef4a76a046a5831bf Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Hi All This may not be a question for this mailing list but i wasn't sure where to start. Please accept my apologies if anyone thinks that this is not the appropriate place for this question. I am currently working on building a proof of concept search solution for my company using Lucene and Hibernate Search. I have built individual components which work fine. I am now looking at creating a single api that would allow a user to get search results back from different sources (domain + data). What I would like to achieve is something like a search manager fires search requests to different search components asynchronously and when one set of results have been processed return that result to the user while processing the rest. Once the result of the search has been processed notify teh client that there are more search results available. I am wondering whether I have a search manager which creates seperate threads to search individual search components and keeps a list of search results. Once the list is populated with one set return that back to the user. Any additional search results added would involve the search manager pushing the results to the user. I am not looking for any code example (any would be appreciated) but I was wondering if I could get some guidance on how to tackle this problem. Do I use event processing technologies (GigaSpaces, Spring, JMS) or use standard Java concurrent libraries. What would be the effective way of managing the list and push the updated results. Cheers Amin --0016e6dd974ef4a76a046a5831bf--