diff --git a/dubbo_client/registry.py b/dubbo_client/registry.py
index 6aa1b9e..5b707ef 100644
--- a/dubbo_client/registry.py
+++ b/dubbo_client/registry.py
@@ -10,7 +10,7 @@
 
 
 class Registry(object):
-    def add_provider_listener(self, provide_name):
+    def subscribe(self, provide_name):
         """
         监听注册中心的服务上下线
         :param provide_name: 类似com.ofpay.demo.api.UserProvider这样的服务名
@@ -51,11 +51,11 @@
             self.__connect_state = state
         elif state == KazooState.SUSPENDED:
             # Handle being disconnected from Zookeeper
-            print 'disconnect from zookeeper'
+            # print 'disconnect from zookeeper'
             self.__connect_state = state
         else:
             # Handle being connected/reconnected to Zookeeper
-            print 'connected'
+            # print 'connected'
             self.__connect_state = state
 
     def __event_listener(self, event):
@@ -106,7 +106,7 @@
             children = self.__zk.get_children(event.path, watch=self.__event_listener)
             self.__handler_nodes(provide_name, children)
 
-    def add_provider_listener(self, interface, **kwargs):
+    def subscribe(self, interface, **kwargs):
         """
         监听注册中心的服务上下线
         :param interface: 类似com.ofpay.demo.api.UserProvider这样的服务名
diff --git a/dubbo_client/rpclib.py b/dubbo_client/rpclib.py
index aeb7d3f..d09f8cb 100644
--- a/dubbo_client/rpclib.py
+++ b/dubbo_client/rpclib.py
@@ -29,7 +29,7 @@
         self.registry = registry
         self.group = kwargs.get('group', '')
         self.version = kwargs.get('version', '')
-        self.registry.add_provider_listener(interface)
+        self.registry.subscribe(interface)
 
     def call(self, method, *args, **kwargs):
         provides = self.registry.get_provides(self.interface, {}, version=self.version, group=self.group)
diff --git a/test_dubbo_client/test_registry.py b/test_dubbo_client/test_registry.py
index 8cef5b2..740a2aa 100644
--- a/test_dubbo_client/test_registry.py
+++ b/test_dubbo_client/test_registry.py
@@ -4,5 +4,5 @@
 
 if __name__ == '__main__':
     registry = ZookeeperRegistry('172.19.65.33:2181')
-    registry.add_provider_listener('com.ofpay.demo.api.UserProvider')
+    registry.subscribe('com.ofpay.demo.api.UserProvider')
     print registry.get_provides('com.ofpay.demo.api.UserProvider')
\ No newline at end of file
