optimize_zk_create (#1833)

diff --git a/dubbo-remoting/dubbo-remoting-zookeeper/src/main/java/com/alibaba/dubbo/remoting/zookeeper/support/AbstractZookeeperClient.java b/dubbo-remoting/dubbo-remoting-zookeeper/src/main/java/com/alibaba/dubbo/remoting/zookeeper/support/AbstractZookeeperClient.java
index 9efd8b4..685effd 100644
--- a/dubbo-remoting/dubbo-remoting-zookeeper/src/main/java/com/alibaba/dubbo/remoting/zookeeper/support/AbstractZookeeperClient.java
+++ b/dubbo-remoting/dubbo-remoting-zookeeper/src/main/java/com/alibaba/dubbo/remoting/zookeeper/support/AbstractZookeeperClient.java
@@ -52,12 +52,14 @@
 

     @Override

     public void create(String path, boolean ephemeral) {

+        if (!ephemeral) {

+            if (checkExists(path)) {

+                return;

+            }

+        }

         int i = path.lastIndexOf('/');

         if (i > 0) {

-            String parentPath = path.substring(0, i);

-            if (!checkExists(parentPath)) {

-                create(parentPath, false);

-            }

+            create(path.substring(0, i), false);

         }

         if (ephemeral) {

             createEphemeral(path);