类 NamingGrpcRedoService

  • 所有已实现的接口:
    com.alibaba.nacos.common.remote.client.ConnectionEventListener

    public class NamingGrpcRedoService
    extends java.lang.Object
    implements com.alibaba.nacos.common.remote.client.ConnectionEventListener
    Naming client gprc redo service.

    When connection reconnect to server, redo the register and subscribe.

    作者:
    xiweng.yy
    • 方法概要

      所有方法 实例方法 具体方法 
      修饰符和类型 方法 说明
      void cacheInstanceForRedo​(java.lang.String serviceName, java.lang.String groupName, com.alibaba.nacos.api.naming.pojo.Instance instance)
      Cache registered instance for redo.
      void cacheInstanceForRedo​(java.lang.String serviceName, java.lang.String groupName, java.util.List<com.alibaba.nacos.api.naming.pojo.Instance> instances)
      Cache registered instance for redo.
      void cacheSubscriberForRedo​(java.lang.String serviceName, java.lang.String groupName, java.lang.String cluster)
      Cache subscriber for redo.
      java.util.Set<InstanceRedoData> findInstanceRedoData()
      Find all instance redo data which need do redo.
      java.util.Set<SubscriberRedoData> findSubscriberRedoData()
      Find all subscriber redo data which need do redo.
      void instanceDeregister​(java.lang.String serviceName, java.lang.String groupName)
      Instance deregister, mark unregistering status as true.
      void instanceRegistered​(java.lang.String serviceName, java.lang.String groupName)
      Instance register successfully, mark registered status as true.
      boolean isConnected()  
      boolean isSubscriberRegistered​(java.lang.String serviceName, java.lang.String groupName, java.lang.String cluster)
      Judge subscriber has registered to server.
      void onConnected()  
      void onDisConnect()  
      void removeInstanceForRedo​(java.lang.String serviceName, java.lang.String groupName)
      Remove registered instance for redo.
      void removeSubscriberForRedo​(java.lang.String serviceName, java.lang.String groupName, java.lang.String cluster)
      Remove subscriber for redo.
      void shutdown()
      Shutdown redo service.
      void subscriberDeregister​(java.lang.String serviceName, java.lang.String groupName, java.lang.String cluster)
      Subscriber deregister, mark unregistering status as true.
      void subscriberRegistered​(java.lang.String serviceName, java.lang.String groupName, java.lang.String cluster)
      Subscriber register successfully, mark registered status as true.
      • 从类继承的方法 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 字段详细资料

      • REDO_THREAD_NAME

        private static final java.lang.String REDO_THREAD_NAME
        另请参阅:
        常量字段值
      • REDO_THREAD

        private static final int REDO_THREAD
        另请参阅:
        常量字段值
      • DEFAULT_REDO_DELAY

        private static final long DEFAULT_REDO_DELAY
        TODO get redo delay from config.
        另请参阅:
        常量字段值
      • registeredInstances

        private final java.util.concurrent.ConcurrentMap<java.lang.String,​InstanceRedoData> registeredInstances
      • subscribes

        private final java.util.concurrent.ConcurrentMap<java.lang.String,​SubscriberRedoData> subscribes
      • redoExecutor

        private final java.util.concurrent.ScheduledExecutorService redoExecutor
      • connected

        private volatile boolean connected
    • 方法详细资料

      • isConnected

        public boolean isConnected()
      • onConnected

        public void onConnected()
        指定者:
        onConnected 在接口中 com.alibaba.nacos.common.remote.client.ConnectionEventListener
      • onDisConnect

        public void onDisConnect()
        指定者:
        onDisConnect 在接口中 com.alibaba.nacos.common.remote.client.ConnectionEventListener
      • cacheInstanceForRedo

        public void cacheInstanceForRedo​(java.lang.String serviceName,
                                         java.lang.String groupName,
                                         com.alibaba.nacos.api.naming.pojo.Instance instance)
        Cache registered instance for redo.
        参数:
        serviceName - service name
        groupName - group name
        instance - registered instance
      • cacheInstanceForRedo

        public void cacheInstanceForRedo​(java.lang.String serviceName,
                                         java.lang.String groupName,
                                         java.util.List<com.alibaba.nacos.api.naming.pojo.Instance> instances)
        Cache registered instance for redo.
        参数:
        serviceName - service name
        groupName - group name
        instances - batch registered instance
      • instanceRegistered

        public void instanceRegistered​(java.lang.String serviceName,
                                       java.lang.String groupName)
        Instance register successfully, mark registered status as true.
        参数:
        serviceName - service name
        groupName - group name
      • instanceDeregister

        public void instanceDeregister​(java.lang.String serviceName,
                                       java.lang.String groupName)
        Instance deregister, mark unregistering status as true.
        参数:
        serviceName - service name
        groupName - group name
      • removeInstanceForRedo

        public void removeInstanceForRedo​(java.lang.String serviceName,
                                          java.lang.String groupName)
        Remove registered instance for redo.
        参数:
        serviceName - service name
        groupName - group name
      • findInstanceRedoData

        public java.util.Set<InstanceRedoData> findInstanceRedoData()
        Find all instance redo data which need do redo.
        返回:
        set of InstanceRedoData need to do redo.
      • cacheSubscriberForRedo

        public void cacheSubscriberForRedo​(java.lang.String serviceName,
                                           java.lang.String groupName,
                                           java.lang.String cluster)
        Cache subscriber for redo.
        参数:
        serviceName - service name
        groupName - group name
        cluster - cluster
      • subscriberRegistered

        public void subscriberRegistered​(java.lang.String serviceName,
                                         java.lang.String groupName,
                                         java.lang.String cluster)
        Subscriber register successfully, mark registered status as true.
        参数:
        serviceName - service name
        groupName - group name
        cluster - cluster
      • subscriberDeregister

        public void subscriberDeregister​(java.lang.String serviceName,
                                         java.lang.String groupName,
                                         java.lang.String cluster)
        Subscriber deregister, mark unregistering status as true.
        参数:
        serviceName - service name
        groupName - group name
        cluster - cluster
      • isSubscriberRegistered

        public boolean isSubscriberRegistered​(java.lang.String serviceName,
                                              java.lang.String groupName,
                                              java.lang.String cluster)
        Judge subscriber has registered to server.
        参数:
        serviceName - service name
        groupName - group name
        cluster - cluster
        返回:
        true if subscribed, otherwise false
      • removeSubscriberForRedo

        public void removeSubscriberForRedo​(java.lang.String serviceName,
                                            java.lang.String groupName,
                                            java.lang.String cluster)
        Remove subscriber for redo.
        参数:
        serviceName - service name
        groupName - group name
        cluster - cluster
      • findSubscriberRedoData

        public java.util.Set<SubscriberRedoData> findSubscriberRedoData()
        Find all subscriber redo data which need do redo.
        返回:
        set of SubscriberRedoData need to do redo.
      • shutdown

        public void shutdown()
        Shutdown redo service.