lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Arcadius Ahouansou <arcad...@menelic.com>
Subject Re: Multiple concurrent queries to Solr
Date Mon, 24 Aug 2015 20:35:09 GMT
Hi Ashish.

The Apache HttpAsyncClient uses Java Future to wrap a synchronous call into
asyn
The above ticket does similar thing by wrapping a SolrJ call into Future

Feel free to submit any proposal you may have to the dev list.

Arcadius

On 24 August 2015 at 07:20, Ashish Mukherjee <ashish.mukherjee@gmail.com>
wrote:

> Thanks, everyone. Arcadius, that ticket is interesting.
>
> I was wondering if an implementation of SolrClient could be based on
> HttpAsyncClient
> instead of HttpSolrClient. Just a thought right now, which needs to be
> explored deeper.
>
> - Ashish
>
> On Mon, Aug 24, 2015 at 1:46 AM, Arcadius Ahouansou <arcadius@menelic.com>
> wrote:
>
> > Hello Ashish.
> >
> > Therse is an unfinished work about this at
> > https://issues.apache.org/jira/browse/SOLR-3383
> >
> > Maybe you want to have a look and contribute?
> >
> > Arcadius.
> >
> > On 23 August 2015 at 17:02, Walter Underwood <wunder@wunderwood.org>
> > wrote:
> >
> > > The last time that I used the HTTPClient library, it was non-blocking.
> It
> > > doesn’t try to read from the socket until you ask for data from the
> > > response object. That allows parallel requests without threads.
> > >
> > > Underneath, it has a pool of connections that can be reused. If the
> pool
> > > is exhausted, it can block.
> > >
> > > wunder
> > > Walter Underwood
> > > wunder@wunderwood.org
> > > http://observer.wunderwood.org/  (my blog)
> > >
> > >
> > > On Aug 23, 2015, at 8:49 AM, Shawn Heisey <apache@elyograg.org> wrote:
> > >
> > > > On 8/23/2015 7:46 AM, Ashish Mukherjee wrote:
> > > >> I want to run few Solr queries in parallel, which are being done in
> a
> > > >> multi-threaded model now. I was wondering if there are any client
> > > libraries
> > > >> to query Solr  through a non-blocking I/O mechanism instead of a
> > > threaded
> > > >> model. Has anyone attempted something like this?
> > > >
> > > > The only client library that the Solr project makes is SolrJ -- the
> > > > client for Java.  If you are not using the SolrJ client, then the
> Solr
> > > > project did not write it, and you should contact the authors of the
> > > > library directly.
> > > >
> > > > SolrJ and Solr are both completely thread-safe, and multiple threads
> > are
> > > > recommended for highly concurrent usage.  SolrJ uses HttpClient for
> > > > communication with Solr.
> > > >
> > > > I was not able to determine whether the default httpclient settings
> > will
> > > > result in non-blocking I/O or not. As far as I am aware, nothing in
> > > > SolrJ sets any explicit configuration for blocking or non-blocking
> I/O.
> > > > You can create your own HttpClient object in a SolrJ program and have
> > > > the SolrClient object use it.
> > > >
> > > > HttpClient uses HttpCore.  Here is the main web page for these
> > > components:
> > > >
> > > > https://hc.apache.org/
> > > >
> > > > On this webpage, it says "HttpCore supports two I/O models: blocking
> > I/O
> > > > model based on the classic Java I/O and non-blocking, event driven
> I/O
> > > > model based on Java NIO."  There is no information here about which
> > > > model is chosen by default.
> > > >
> > > > Thanks,
> > > > Shawn
> > > >
> > >
> > >
> >
> >
> > --
> > Arcadius Ahouansou
> > Menelic Ltd | Information is Power
> > M: 07908761999
> > W: www.menelic.com
> > ---
> >
>



-- 
Arcadius Ahouansou
Menelic Ltd | Information is Power
M: 07908761999
W: www.menelic.com
---

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