Consider removing the SharedConnectionPool class

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Done
    • Priority: Major - P3
    • 2.0
    • Affects Version/s: None
    • Component/s: Connectivity
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      The SharedConnectionPool differs from the ExclusiveConnectionPool in that connections from the SharedConnectionPool can be handed out to multiple callers in parallel, and they all share the connection.

      Sharing is supported by pipelining all the operations from all the callers over the same connection. Outgoing messages are sent in the order in which they are queued to be sent, and incoming messages are processed in whatever order the server returns them in (current versions of the server will process the operations in the same order they are received).

      The benefit of sharing connections in this way is that a client can probably get by with far fewer connections, which means less resources required at both the client and the server. The disadvantage (specially with current versions of the server that process operations in the order they are received) is that any slow operations cause all other operations queued behind them to be delayed.

      However, it seems likely that we will not be supporting the SharedConnectionPool in the 2.0 release of the driver, so it should probably be removed from the code base until such future time as we actually start supporting shared pipelined connections.

            Assignee:
            Robert Stam
            Reporter:
            Robert Stam
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: