You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Jeff Wartes (JIRA)" <ji...@apache.org> on 2015/09/22 00:42:04 UTC

[jira] [Commented] (SOLR-4449) Enable backup requests for the internal solr load balancer

    [ https://issues.apache.org/jira/browse/SOLR-4449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14901555#comment-14901555 ] 

Jeff Wartes commented on SOLR-4449:
-----------------------------------

I pulled this patch out into a freestanding jar and ported it to Solr 5.3. 

I tried to pull in all the things that had changed since they were copied from the parent class in 4.4, and added per-request backup time support. 
Sadly, there were still a few places where package-protected restrictions got in the way, (Rsp.server and LBHttpSolrClient.doRequest in particular) so even as a separate jar, this must be loaded by the same classloader as LBHttpSolrClient, not via solr's lib inclusion mechanism.

After this long, it feels unlikely this feature will get merged, but if there's any interest in that it should still be pretty simple to just copy the files back into the solr source tree, I didn't change any paths or package names, and I'd be happy to upload another patch file.

My version can be found here:
https://github.com/whitepages/SOLR-4449

For those who were wondering about the effect of this stuff, in one test today I cut my median query response time in half, at a cost of about 15% more cluster-wide cpu, simply by using this and setting the backupRequestDelay to half my observed ParNew GC pause. The next logical step would be performance-aware backup request settings, like "issue a backup request when you exceed your 95th percentile latency for a given requestHandler or queryPerformanceClass".

My thanks to [~phloy] for authoring this.

> Enable backup requests for the internal solr load balancer
> ----------------------------------------------------------
>
>                 Key: SOLR-4449
>                 URL: https://issues.apache.org/jira/browse/SOLR-4449
>             Project: Solr
>          Issue Type: New Feature
>          Components: SolrCloud
>            Reporter: philip hoy
>            Priority: Minor
>         Attachments: SOLR-4449.patch, SOLR-4449.patch, SOLR-4449.patch, patch-4449.txt, solr-back-request-lb-plugin.jar
>
>
> Add the ability to configure the built-in solr load balancer such that it submits a backup request to the next server in the list if the initial request takes too long. Employing such an algorithm could improve the latency of the 9xth percentile albeit at the expense of increasing overall load due to additional requests. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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