Uploaded image for project: 'ZooKeeper'
  1. ZooKeeper
  2. ZOOKEEPER-561

inefficient buffer management, inefficient gc, in NIOServer request handling

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Invalid
    • Affects Version/s: None
    • Fix Version/s: 3.3.0
    • Component/s: server
    • Labels:
      None

      Description

      for every request we allocate a buffer to read the body. in most cases the request (say for get) will be very small, but we
      always allocate a new buffer to store the request.

      There should be a way to improve the buffer handling here. In particular it seems that if we have a buffer of reasonable
      length (1k) preallocated we could use this to service all requests <= 1k and only allocate when requests are larger. seems
      like this would handle a large fraction of the requests we typically see (except for large sets for example)

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              phunt Patrick Hunt
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: