{"push_id":3003654884,"size":1,"distinct_size":1,"ref":"refs/heads/remove_stream_duplicator","head":"298c9b75d5008e0bce1f8645591c5d16837dfc1f","before":"678dfc2b89688833ef9c4932437e51f2312fba69","commits":[{"sha":"298c9b75d5008e0bce1f8645591c5d16837dfc1f","author":{"name":"minwoox","email":"a29cc30cdb88b7c113f67e28e3eba0cfd690013f@gmail.com"},"message":"Provide a way to choose using StreamDuplicator in RetryingHttpClient and CircuitBreakerHttpClient\nMotivation:\nWhen using `RetryingHttpClient` and `CircuitBreakerHttpClient`, we use `HttpResponseDuplicator`\nto duplicate the `HttpResponse` in order to make a decision.\nHowever, in most cases, we just need the response headers to decide and don't need the content.\nIf we see the content only when we really have to, we can minimize the usage of duplicator which\naffects the performance.\n\nModifications:\n- Add `needsResponseStreaming()` into `RetryStrategy` and `CircuitBreakerStrategy` to decide\n- Add a benchmark to see the difference bewteen using `Duplicator` and without it\n\nResult:\n- Better performance\n- Close #1408\n\nTodo:\n- Change `FixedStreamMessage` duplicable\n- Don't let `RetryingHttpClient` use `HttpRequestDuplicator` when the content-length is zero","distinct":true,"url":"https://api.github.com/repos/minwoox/armeria/commits/298c9b75d5008e0bce1f8645591c5d16837dfc1f"}]}
{"actor":{"display_login":"minwoox"}}