You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@solr.apache.org by GitBox <gi...@apache.org> on 2021/06/02 19:33:58 UTC

[GitHub] [solr] cpoerschke commented on pull request #96: SOLR-15056: add circuit breaker for CPU, fix load circuit breaker

cpoerschke commented on pull request #96:
URL: https://github.com/apache/solr/pull/96#issuecomment-853328967


   So one possibility is to change the implementation of the existing `CPUCircuitBreaker` class and to add a new `LoadAverageCircuitBreaker` class which has the same behaviour as the existing `CPUCircuitBreaker` class. Changing an existing class's behaviour may bring backwards compatibility concerns and there being two related circuit breaker classes may raise questions of code duplication and whether or not to factor out a common base class.
   
   I wonder if another possibility could be to have a single `CPUCircuitBreaker` class and for a configurable attribute to determine the implementation's behaviour:
   
   Existing users with a configuration like this
   
   ```
   <circuitBreaker class="solr.CircuitBreakerManager" enabled="true">
     <str name="cpuEnabled">true</str>
     <str name="cpuThreshold">42</str>
   </circuitBreaker>
   ```
   
   would continue to get their existing behaviour, equivalent to
   
   ```
   <circuitBreaker class="solr.CircuitBreakerManager" enabled="true">
     <str name="cpuEnabled">true</str>
     <str name="cpuThreshold">42</str>
     <str name="cpuMethod">OperatingSystemMXBean</str>
   </circuitBreaker>
   ```
   
   configuration and users wishing to use the new alternative implementation can do so via
   
   ```
   <circuitBreaker class="solr.CircuitBreakerManager" enabled="true">
     <str name="cpuEnabled">true</str>
     <str name="cpuThreshold">7</str>
     <str name="cpuMethod">SolrMetricManager</str>
   </circuitBreaker>
   ```
   
   configuration.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



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