类 GrpcClient

  • 所有已实现的接口:
    Closeable
    直接已知子类:
    GrpcClusterClient, GrpcSdkClient

    public abstract class GrpcClient
    extends RpcClient
    gRPC Client.
    版本:
    $Id: GrpcClient.java, v 0.1 2020年07月13日 9:16 PM liuzunfei Exp $
    作者:
    liuzunfei
    • 字段详细资料

      • LOGGER

        private static final org.slf4j.Logger LOGGER
      • grpcExecutor

        private java.util.concurrent.ThreadPoolExecutor grpcExecutor
    • 构造器详细资料

      • GrpcClient

        public GrpcClient​(java.lang.String name)
        constructor.
        参数:
        name - .
      • GrpcClient

        public GrpcClient​(java.util.Properties properties)
        constructor.
        参数:
        properties - .
      • GrpcClient

        public GrpcClient​(GrpcClientConfig clientConfig)
        constructor.
        参数:
        clientConfig - .
      • GrpcClient

        public GrpcClient​(java.lang.String name,
                          java.lang.Integer threadPoolCoreSize,
                          java.lang.Integer threadPoolMaxSize,
                          java.util.Map<java.lang.String,​java.lang.String> labels)
        constructor.
        参数:
        name - .
        threadPoolCoreSize - .
        threadPoolMaxSize - .
        labels - .
    • 方法详细资料

      • createGrpcExecutor

        protected java.util.concurrent.ThreadPoolExecutor createGrpcExecutor​(java.lang.String serverIp)
      • shutdown

        public void shutdown()
                      throws com.alibaba.nacos.api.exception.NacosException
        从接口复制的说明: Closeable
        Shutdown the Resources, such as Thread Pool.
        指定者:
        shutdown 在接口中 Closeable
        覆盖:
        shutdown 在类中 RpcClient
        抛出:
        com.alibaba.nacos.api.exception.NacosException - exception.
      • createNewChannelStub

        private com.alibaba.nacos.api.grpc.auto.RequestGrpc.RequestFutureStub createNewChannelStub​(io.grpc.ManagedChannel managedChannelTemp)
        Create a stub using a channel.
        参数:
        managedChannelTemp - channel.
        返回:
        if server check success,return a non-null stub.
      • createNewManagedChannel

        private io.grpc.ManagedChannel createNewManagedChannel​(java.lang.String serverIp,
                                                               int serverPort)
        create a new channel with specific server address.
        参数:
        serverIp - serverIp.
        serverPort - serverPort.
        返回:
        if server check success,return a non-null channel.
      • shuntDownChannel

        private void shuntDownChannel​(io.grpc.ManagedChannel managedChannel)
        shutdown a channel.
        参数:
        managedChannel - channel to be shutdown.
      • serverCheck

        private com.alibaba.nacos.api.remote.response.Response serverCheck​(java.lang.String ip,
                                                                           int port,
                                                                           com.alibaba.nacos.api.grpc.auto.RequestGrpc.RequestFutureStub requestBlockingStub)
        check server if success.
        参数:
        requestBlockingStub - requestBlockingStub used to check server.
        返回:
        success or not
      • bindRequestStream

        private io.grpc.stub.StreamObserver<com.alibaba.nacos.api.grpc.auto.Payload> bindRequestStream​(com.alibaba.nacos.api.grpc.auto.BiRequestStreamGrpc.BiRequestStreamStub streamStub,
                                                                                                       GrpcConnection grpcConn)
      • sendResponse

        private void sendResponse​(com.alibaba.nacos.api.remote.response.Response response)
      • connectToServer

        public Connection connectToServer​(RpcClient.ServerInfo serverInfo)
        从类复制的说明: RpcClient
        connect to server.
        指定者:
        connectToServer 在类中 RpcClient
        参数:
        serverInfo - server address to connect.
        返回:
        return connection when successfully connect to server, or null if failed.