title: HttpClient: What is the difference between ServiceUnavailableRetryStrategy and HttpRequestRetryHandler?
body: <p>I was hoping to deal with this situation where i want it to do retry after a delay, but it seems that the delay that i set in ServiceUnavailableRetryStrategy didnt take place :</p>
  
  <blockquote>
    <p>19:42:29.046 [scheduler-15] INFO  o.a.http.impl.execchain.RetryExec -
    I/O exception (org.apache.http.NoHttpResponseException ) caught when
    processing request to {}-><a href="http://testing.com:80" rel="noreferrer">http://testing.com:80</a>: The target server
    failed to respond 19:42:29.049 [scheduler-15] INFO 
    o.a.http.impl.execchain.RetryExec - Retrying request to
    {}-><a href="http://testing.com:80" rel="noreferrer">http://testing.com:80</a></p>
  </blockquote>
  
  <p>I have both of <a href="https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/client/ServiceUnavailableRetryStrategy.html" rel="noreferrer">ServiceUnavailableRetryStrategy</a> and <a href="https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/client/HttpRequestRetryHandler.html" rel="noreferrer">HttpRequestRetryHandler</a> set. And from both, it seems that only ServiceUnavailableRetryStrategy has a delay option, where i dont see any delay options for httpRequestRetryHandler.</p>
  
  <p>So in the case of the NoHttpResponseException above, which one is actually used ? And what's the difference between those two ?</p>