From 2537dc6c416ee61582494b9d0db922b452f8b98e Mon Sep 17 00:00:00 2001 From: Albumen Kevin Date: Sun, 5 Dec 2021 11:53:03 +0800 Subject: [PATCH] Change zk to docker env in multi-registry (#401) --- .../case-configuration.yml | 28 +++++++++++++++---- .../multi/registry/MultiRegistryProvider.java | 4 +-- .../spring/multi-registry-consumer.xml | 4 +-- .../spring/multi-registry-consumer1.xml | 4 +-- .../spring/multi-registry-consumer2.xml | 2 +- .../spring/multi-registry-consumer3.xml | 2 +- .../spring/multi-registry-provider.xml | 4 +-- .../registry/MultiRegistryServiceSplitIT.java | 8 +++--- .../dubbo/samples/multi/registry/ZKTools.java | 9 +++--- 9 files changed, 41 insertions(+), 24 deletions(-) diff --git a/dubbo-samples-multi-registry/case-configuration.yml b/dubbo-samples-multi-registry/case-configuration.yml index 574400abb..0a618ad97 100644 --- a/dubbo-samples-multi-registry/case-configuration.yml +++ b/dubbo-samples-multi-registry/case-configuration.yml @@ -15,13 +15,29 @@ # limitations under the License. services: + zookeeper-1: + image: zookeeper:latest + + zookeeper-2: + image: zookeeper:latest + dubbo-samples-multi-registry: type: app basedir: . mainClass: org.apache.dubbo.samples.multi.registry.MultiRegistryProvider + systemProps: + - zookeeper.address.1=zookeeper-1 + - zookeeper.address.2=zookeeper-2 + - zookeeper.port=2181 checkPorts: - 20880 checkLog: "dubbo service started" + waitPortsBeforeRun: + - zookeeper-1:2181 + - zookeeper-2:2181 + depends_on: + - zookeeper-1 + - zookeeper-2 dubbo-samples-multi-registry-test: type: test @@ -29,14 +45,16 @@ services: tests: - "**/*IT.class" systemProps: - - zookeeper.address=dubbo-samples-multi-registry - - zookeeper.port.1=2181 - - zookeeper.port.2=2182 + - zookeeper.address.1=zookeeper-1 + - zookeeper.address.2=zookeeper-2 + - zookeeper.port=2181 - dubbo.address=dubbo-samples-multi-registry - dubbo.port=20880 waitPortsBeforeRun: - - dubbo-samples-multi-registry:2181 - - dubbo-samples-multi-registry:2182 + - zookeeper-1:2181 + - zookeeper-2:2181 - dubbo-samples-multi-registry:20880 depends_on: + - zookeeper-1 + - zookeeper-2 - dubbo-samples-multi-registry \ No newline at end of file diff --git a/dubbo-samples-multi-registry/src/main/java/org/apache/dubbo/samples/multi/registry/MultiRegistryProvider.java b/dubbo-samples-multi-registry/src/main/java/org/apache/dubbo/samples/multi/registry/MultiRegistryProvider.java index 993acd29a..98c5384d0 100644 --- a/dubbo-samples-multi-registry/src/main/java/org/apache/dubbo/samples/multi/registry/MultiRegistryProvider.java +++ b/dubbo-samples-multi-registry/src/main/java/org/apache/dubbo/samples/multi/registry/MultiRegistryProvider.java @@ -27,8 +27,8 @@ public class MultiRegistryProvider { public static void main(String[] args) throws Exception { - new EmbeddedZooKeeper(2181, false).start(); - new EmbeddedZooKeeper(2182, false).start(); +// new EmbeddedZooKeeper(2181, false).start(); +// new EmbeddedZooKeeper(2182, false).start(); ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("spring/multi-registry-provider.xml"); context.start(); diff --git a/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-consumer.xml b/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-consumer.xml index 2fd79545a..1a318b96b 100644 --- a/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-consumer.xml +++ b/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-consumer.xml @@ -25,8 +25,8 @@ - - + + - - + + diff --git a/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-consumer2.xml b/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-consumer2.xml index aa252ecbf..717fc9775 100644 --- a/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-consumer2.xml +++ b/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-consumer2.xml @@ -25,7 +25,7 @@ - + diff --git a/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-consumer3.xml b/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-consumer3.xml index 8119df2b3..3ce3bfd9d 100644 --- a/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-consumer3.xml +++ b/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-consumer3.xml @@ -25,7 +25,7 @@ - + diff --git a/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-provider.xml b/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-provider.xml index 3b88486fa..ad345fa16 100644 --- a/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-provider.xml +++ b/dubbo-samples-multi-registry/src/main/resources/spring/multi-registry-provider.xml @@ -25,8 +25,8 @@ - - + + diff --git a/dubbo-samples-multi-registry/src/test/java/org/apache/dubbo/samples/multi/registry/MultiRegistryServiceSplitIT.java b/dubbo-samples-multi-registry/src/test/java/org/apache/dubbo/samples/multi/registry/MultiRegistryServiceSplitIT.java index 184c8077e..c694596a2 100644 --- a/dubbo-samples-multi-registry/src/test/java/org/apache/dubbo/samples/multi/registry/MultiRegistryServiceSplitIT.java +++ b/dubbo-samples-multi-registry/src/test/java/org/apache/dubbo/samples/multi/registry/MultiRegistryServiceSplitIT.java @@ -67,17 +67,17 @@ public void testConsumer3() throws Exception { @Test public void verifyProvidersFromBeijingRegistry() throws Exception { - List demoServiceProviders = ZKTools.getProviders(DemoService.class, 2181); + List demoServiceProviders = ZKTools.getProviders(DemoService.class, "zookeeper.address.1", 2181); Assert.assertEquals(1, demoServiceProviders.size()); - List helloServiceProviders = ZKTools.getProviders(HelloService.class, 2181); + List helloServiceProviders = ZKTools.getProviders(HelloService.class, "zookeeper.address.1", 2181); Assert.assertEquals(1, helloServiceProviders.size()); } @Test public void verifyProvidersFromShanghaiRegistry() throws Exception { - List demoServiceProviders = ZKTools.getProviders(DemoService.class, 2182); + List demoServiceProviders = ZKTools.getProviders(DemoService.class, "zookeeper.address.2", 2181); Assert.assertEquals(1, demoServiceProviders.size()); - List helloServiceProviders = ZKTools.getProviders(HelloService.class, 2182); + List helloServiceProviders = ZKTools.getProviders(HelloService.class, "zookeeper.address.2", 2181); Assert.assertEquals(1, helloServiceProviders.size()); } } diff --git a/dubbo-samples-multi-registry/src/test/java/org/apache/dubbo/samples/multi/registry/ZKTools.java b/dubbo-samples-multi-registry/src/test/java/org/apache/dubbo/samples/multi/registry/ZKTools.java index f03950d5a..f0f8bf0a9 100644 --- a/dubbo-samples-multi-registry/src/test/java/org/apache/dubbo/samples/multi/registry/ZKTools.java +++ b/dubbo-samples-multi-registry/src/test/java/org/apache/dubbo/samples/multi/registry/ZKTools.java @@ -28,12 +28,11 @@ import java.util.stream.Collectors; public class ZKTools { - private static String zookeeperHost = System.getProperty("zookeeper.address", "127.0.0.1"); private static Map clients = new HashMap<>(); - private static CuratorFramework initClient(int port) { + private static CuratorFramework initClient(String key, int port) { if (!clients.containsKey(port)) { - CuratorFramework client = CuratorFrameworkFactory.newClient(zookeeperHost + ":" + port, 60 * 1000, 60 * 1000, + CuratorFramework client = CuratorFrameworkFactory.newClient(System.getProperty(key, "127.0.0.1") + ":" + port, 60 * 1000, 60 * 1000, new ExponentialBackoffRetry(1000, 3)); client.start(); clients.put(port, client); @@ -41,8 +40,8 @@ private static CuratorFramework initClient(int port) { return clients.get(port); } - public static List getProviders(Class clazz, int port) throws Exception { - CuratorFramework client = initClient(port); + public static List getProviders(Class clazz, String key, int port) throws Exception { + CuratorFramework client = initClient(key, port); String path = "/dubbo/" + clazz.getName() + "/providers"; List result = client.getChildren().forPath(path); return result.stream().map(URL::decode).collect(Collectors.toList());