You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by "Rishi Sankar (Jira)" <ji...@apache.org> on 2020/08/19 21:04:00 UTC

[jira] [Created] (SOLR-14763) SolrJ Client Async HTTP/2 Requests

Rishi Sankar created SOLR-14763:
-----------------------------------

             Summary: SolrJ Client Async HTTP/2 Requests
                 Key: SOLR-14763
                 URL: https://issues.apache.org/jira/browse/SOLR-14763
             Project: Solr
          Issue Type: Improvement
      Security Level: Public (Default Security Level. Issues are Public)
          Components: SolrJ
    Affects Versions: 8.7
            Reporter: Rishi Sankar


In [SOLR-14354|https://issues.apache.org/jira/browse/SOLR-14354], [~caomanhdat] created an API to use Jetty async API to make more thread efficient HttpShardHandler requests. This added public async request APIs to Http2SolrClient and LBHttp2SolrClient. There are a few ways this API can be improved, that I will track in this issue:

1) Using a CompletableFuture-based async API signature, instead of using internal custom interfaces (Cancellable, AsyncListener) - based on [this discussion|[https://lists.apache.org/thread.html/r548f318d9176c84ad1a4ed49ff182eeea9f82f26cb23e372244c8a23%40%3Cdev.lucene.apache.org%3E]].

2) An async API is also useful in other HTTP/2 Solr clients as well, particularly CloudHttp2SolrClient ([SOLR-14675|https://issues.apache.org/jira/browse/SOLR-14675]). I will add a requestAsync method to the SolrClient class, with a default method that initially throws an unsupported operation exception (maybe this can be later updated to use an executor to handle the async request as a default impl). For now, I'll override the default implementation in the Http2SolrClient and CloudHttp2SolrClient.

3) Performance benchmarks



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org