GCPCallInvoker updates the channel pool(GcpExtensionChannel) for
each RPC. The idea is:
Before the RPC starts, pick a channel from the channel pool:

  • if the RPC is bound to a channel, use that channel.
  • if the RPC doesn't bound to a channel, use the one with minimum active streams.
    After the RPC finishes, update the active stream ref count.
    • if the RPC is defined as bind, bind the channel with corresponding key like
      spanner session name.
    • if the RPC is defined as unbind, unbind the channel with the key.
public __construct( $affinity_conf)
    public BidiStreamingCall( $channel, $method, $deserialize, $options)
    public ClientStreamingCall( $channel, $method, $deserialize, $options)
    public createChannelFactory( $hostname, $opts)
    public GetChannel()
    public ServerStreamingCall( $channel, $method, $deserialize, $options)
    public UnaryCall( $channel, $method, $deserialize, $options)
    private $affinity_conf
    private $channel
    © 2020 Bruce Wells
    Search Namespaces \ Classes
    ConfigurationNumbers (0-9.) only