Interface ConnectionCache<C extends Connection>

All Known Subinterfaces:
InboundConnectionCache<C>, OutboundConnectionCache<C>
All Known Implementing Classes:
ConnectionCacheBase, ConnectionCacheBlockingBase, ConnectionCacheNonBlockingBase, InboundConnectionCacheBlockingImpl, InboundConnectionCacheImpl, OutboundConnectionCacheBlockingImpl, OutboundConnectionCacheImpl

public interface ConnectionCache<C extends Connection>
A connection cache manages a group of connections which may be re-used for sending and receiving messages.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    close(C conn)
    Close a connection, regardless of its state.
    User-provided identifier for an instance of the OutboundConnectionCache.
    int
    Threshold at which connection reclamation begins.
    long
    Number of non-idle connections.
    long
    Total number of connections currently managed by the cache.
    long
    Number of idle connections; that is, connections for which the number of get/release or responseReceived/responseProcessed calls are equal.
    long
    Number of idle connections that are reclaimable.
    int
    Number of connections to reclaim each time reclamation starts.
  • Method Details

    • getCacheType

      String getCacheType()
      User-provided identifier for an instance of the OutboundConnectionCache.
      Returns:
      identifier String
    • numberOfConnections

      long numberOfConnections()
      Total number of connections currently managed by the cache.
      Returns:
      number of connections
    • numberOfIdleConnections

      long numberOfIdleConnections()
      Number of idle connections; that is, connections for which the number of get/release or responseReceived/responseProcessed calls are equal.
      Returns:
      number of idle connections
    • numberOfBusyConnections

      long numberOfBusyConnections()
      Number of non-idle connections. Normally, busy+idle==total, but this may not be strictly true due to concurrent updates to the connection cache.
      Returns:
      number of non-idle connections
    • numberOfReclaimableConnections

      long numberOfReclaimableConnections()
      Number of idle connections that are reclaimable. Such connections are not in use, and are not waiting to handle any responses.
      Returns:
      number of reclaimable idle connections
    • highWaterMark

      int highWaterMark()
      Threshold at which connection reclamation begins.
      Returns:
      threshold
    • numberToReclaim

      int numberToReclaim()
      Number of connections to reclaim each time reclamation starts.
      Returns:
      number to reclaim
    • close

      void close(C conn)
      Close a connection, regardless of its state. This may cause requests to fail to be sent, and responses to be lost. Intended for handling serious errors, such as loss of framing on a TCP stream, that require closing the connection.
      Parameters:
      conn - connection to close