Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-1091 Reduce Avatica RPC latency umbrella
  3. CALCITE-1117

Use commons httpclient instead of JDK http client

    XMLWordPrintableJSON

    Details

    • Type: Sub-task
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: avatica-1.7.0
    • Component/s: avatica
    • Labels:
      None

      Description

      I've been stumbling around, trying to get a better understanding of how HttpURLConnection works (with http/1.1), applying it to some of the knowledge I have with the distributed key-value stores on Hadoop I'm familiar with.

      Along the way, I found lots of recommendations to move to Apache Commons HttpClient (http://hc.apache.org) with the broad suggestion that "it's just generally better". I mocked this up and was pleasantly surprised to find that this netted about a 20% improvement over the existing http client implementation (with a stubbed-out JDBC driver inside Avatica – just measuring Avatica itself).

      Thankfully, we have an interface for the http client, so it should be easy to add a new implementation with a factory to do some client-side configuration.

        Attachments

          Activity

            People

            • Assignee:
              elserj Josh Elser
              Reporter:
              elserj Josh Elser
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: