zoukankan      html  css  js  c++  java
  • 初识Dubbo及工程(一)

    本章节将会介绍dubbo 2.7.1的项目工程结构,以及一个简单的helloworld来运行,让读者对dubbo有一个更加直观的了解。

    项目结构:

    dubbo-common

    公共逻辑子项目,定义了各子项目中 通用的 组件 和 工具类,如:IO、日志、配置处理等。

    dubbo-rpc                                           

    分布式协调服务框架的核心,该模块定义了 RPC 相关的组件,包括 服务发布、服务调用代理、远程调用结果、RPC 调用网络协议,RPC 调用监听器和过滤器等等。该模块提供了默认的 基于 dubbo 协议的实现,还提供了 hessian、http、rmi、及 webservice 等协议的实现,能够满足绝大多数项目的使用需求,另外 还提供了对自定义协议的扩展。

    dubbo-registry

    注册中心子项目,它是 RPC 中 consumer 服务消费者 和 provider 服务提供者 两个重要角色的协调者,该子项目定义了核心的 注册中心组件,提供了 mutilcast、redis 和 zookeeper 等多种方式的注册中心实现,用于不同的使用场景。当然,几乎所有的项目都会选择基于 zookeeper 的实现。

    dubbo-remoting

    远程通讯子项目,RPC 的实现基础就是远程通讯,consmer 要调用 provider 的远程方法必须通过 远程通讯实现。该模块定义了远程传输器、endpoint 终端、客户端、服务端、编码解码器、数据交换、缓冲区、通讯异常定义 等核心组件。他是对于远程网络通讯的抽象,提供了诸如 netty、mina、http 等 协议和技术框架的实现方式。

    dubbo-monitor

    监控子项目,该模块可以监控服务调用的各种信息,例如调用耗时、调用量、调用结果等等,监控中心在调用过程中收集调用的信息,发送到监控服务,在监控服务中可以存储这些信息,对这些数据进行统计分析 和 展示。dubbo 默认提供了一个实现,该实现非常简单,只是作为默认的实现范例,生产环境使用价值不高,往往需要自行实现。

    dubbo-container

    容器子项目,是一个独立的容器,以简单的 Main(类) 加载 Spring 启动,因为服务通常不需要 Tomcat/JBoss 等 Web 容器的特性,没必要用 Web 容器去加载服务。

    dubbo-config

    配置中心子项目,该模块通过 配置信息,将 dubbo 组件的各个模块整合在一起,给 框架的使用者 提供 可配置的、易用的 分布式服务框架。它定义了面向 dubbo 使用者的各种信息配置,比如服务发布配置、方法发布配置、服务消费配置、应用程序配置、注册中心配置、协议配置、监控配置等等。

    dubbo-cluster

    集群子项目,将多个服务提供方伪装为一个提供方,包括:负载均衡、容错、路由等,集群的地址列表可以是静态配置的,也可以是由注册中心下发。

    dubbo-admin

    该子项目是一个 web 应用,可以独立部署,用于管理 dubbo 服务,该管理应用可以连接注册中心,读取和更新 注册中心中的内容。

    Demo

    1 安装zk

    https://www.pianshen.com/article/58381020930/

    安装且启动成功后:

    2 在dubbo-demo下的dubbo-demo-api下面分别写一个服务提供者和服务消费者

    服务提供者

    package com.alibaba.dubbo.config;
    
    import com.alibaba.dubbo.config.api.DemoService;
    import com.alibaba.dubbo.config.provider.impl.DemoServiceImpl;
    
    import java.io.IOException;
    
    public class DubboDemoForProvider {
    
        public static void main(String[] args) throws IOException {
            ServiceConfig<DemoServiceImpl> service = new ServiceConfig<DemoServiceImpl>();
            service.setApplication(new ApplicationConfig("dubbo-demo-api-provider"));
            service.setRegistry(new RegistryConfig("zookeeper://127.0.0.1:2181"));
            service.setInterface(DemoService.class);
            service.setRef(new DemoServiceImpl());
            service.export();
            System.in.read();
        }
    }

    服务消费者

    package com.alibaba.dubbo.config;
    
    import com.alibaba.dubbo.config.api.DemoService;
    
    public class DubboDemoForConsumer {
        public static void main(String[] args) {
            ReferenceConfig<DemoService> reference = new ReferenceConfig<DemoService>();
            reference.setApplication(new ApplicationConfig("dubbo-demo-api-consumer"));
            reference.setRegistry(new RegistryConfig("zookeeper://localhost:2181"));
            reference.setInterface(DemoService.class);
            DemoService service = reference.get();
            String message = service.sayName("dubbo");
            System.out.println(message);
        }
    }

    服务提供者运行日志

    /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/bin/java -javaagent:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar=49392:/Applications/IntelliJ IDEA CE.app/Contents/bin -Dfile.encoding=UTF-8 -classpath /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/cldrdata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/jaccess.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/nashorn.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jfxswt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/ant-javafx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/javafx-mx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/jconsole.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/packager.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/sa-jdi.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/tools.jar:/Users/gaojiayi/dubbo/dubbo-config/dubbo-config-api/target/test-classes:/Users/gaojiayi/dubbo/dubbo-config/dubbo-config-api/target/classes:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-zookeeper/target/classes:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-api/target/classes:/Users/gaojiayi/dubbo/dubbo-cluster/target/classes:/Users/gaojiayi/dubbo/dubbo-remoting/dubbo-remoting-zookeeper/target/classes:/Users/gaojiayi/.m2/repository/org/apache/zookeeper/zookeeper/3.4.9/zookeeper-3.4.9.jar:/Users/gaojiayi/.m2/repository/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar:/Users/gaojiayi/.m2/repository/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.jar:/Users/gaojiayi/.m2/repository/jline/jline/0.9.94/jline-0.9.94.jar:/Users/gaojiayi/.m2/repository/io/netty/netty/3.10.5.Final/netty-3.10.5.Final.jar:/Users/gaojiayi/.m2/repository/com/101tec/zkclient/0.2/zkclient-0.2.jar:/Users/gaojiayi/.m2/repository/org/apache/curator/curator-framework/2.12.0/curator-framework-2.12.0.jar:/Users/gaojiayi/.m2/repository/org/apache/curator/curator-client/2.12.0/curator-client-2.12.0.jar:/Users/gaojiayi/.m2/repository/com/google/guava/guava/16.0.1/guava-16.0.1.jar:/Users/gaojiayi/dubbo/dubbo-monitor/dubbo-monitor-api/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-api/target/classes:/Users/gaojiayi/dubbo/dubbo-remoting/dubbo-remoting-api/target/classes:/Users/gaojiayi/dubbo/dubbo-common/target/classes:/Users/gaojiayi/.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar:/Users/gaojiayi/.m2/repository/log4j/log4j/1.2.16/log4j-1.2.16.jar:/Users/gaojiayi/.m2/repository/org/javassist/javassist/3.20.0-GA/javassist-3.20.0-GA.jar:/Users/gaojiayi/.m2/repository/com/alibaba/fastjson/1.2.46/fastjson-1.2.46.jar:/Users/gaojiayi/.m2/repository/com/esotericsoftware/kryo/4.0.1/kryo-4.0.1.jar:/Users/gaojiayi/.m2/repository/com/esotericsoftware/reflectasm/1.11.3/reflectasm-1.11.3.jar:/Users/gaojiayi/.m2/repository/org/ow2/asm/asm/5.0.4/asm-5.0.4.jar:/Users/gaojiayi/.m2/repository/com/esotericsoftware/minlog/1.3.0/minlog-1.3.0.jar:/Users/gaojiayi/.m2/repository/de/javakaffee/kryo-serializers/0.42/kryo-serializers-0.42.jar:/Users/gaojiayi/.m2/repository/de/ruedigermoeller/fst/2.48-jdk-6/fst-2.48-jdk-6.jar:/Users/gaojiayi/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.8.6/jackson-core-2.8.6.jar:/Users/gaojiayi/.m2/repository/com/cedarsoftware/java-util/1.9.0/java-util-1.9.0.jar:/Users/gaojiayi/.m2/repository/com/cedarsoftware/json-io/2.5.1/json-io-2.5.1.jar:/Users/gaojiayi/dubbo/dubbo-serialization/dubbo-serialization-api/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-injvm/target/classes:/Users/gaojiayi/dubbo/dubbo-filter/dubbo-filter-validation/target/classes:/Users/gaojiayi/dubbo/dubbo-filter/dubbo-filter-cache/target/classes:/Users/gaojiayi/.m2/repository/javax/cache/cache-api/1.0.0/cache-api-1.0.0.jar:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-default/target/classes:/Users/gaojiayi/dubbo/dubbo-monitor/dubbo-monitor-default/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-dubbo/target/classes:/Users/gaojiayi/dubbo/dubbo-container/dubbo-container-api/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-rmi/target/classes:/Users/gaojiayi/.m2/repository/org/springframework/spring-context/4.3.16.RELEASE/spring-context-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-aop/4.3.16.RELEASE/spring-aop-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-beans/4.3.16.RELEASE/spring-beans-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-core/4.3.16.RELEASE/spring-core-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-expression/4.3.16.RELEASE/spring-expression-4.3.16.RELEASE.jar:/Users/gaojiayi/dubbo/dubbo-remoting/dubbo-remoting-netty4/target/classes:/Users/gaojiayi/.m2/repository/io/netty/netty-all/4.1.25.Final/netty-all-4.1.25.Final.jar:/Users/gaojiayi/.m2/repository/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final.jar:/Users/gaojiayi/.m2/repository/org/hibernate/hibernate-validator/5.4.1.Final/hibernate-validator-5.4.1.Final.jar:/Users/gaojiayi/.m2/repository/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final.jar:/Users/gaojiayi/.m2/repository/com/fasterxml/classmate/1.3.1/classmate-1.3.1.jar:/Users/gaojiayi/.m2/repository/org/glassfish/javax.el/3.0.1-b08/javax.el-3.0.1-b08.jar:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-multicast/target/classes:/Users/gaojiayi/dubbo/dubbo-serialization/dubbo-serialization-hessian2/target/classes:/Users/gaojiayi/.m2/repository/com/alibaba/hessian-lite/3.2.5/hessian-lite-3.2.5.jar:/Users/gaojiayi/dubbo/dubbo-serialization/dubbo-serialization-jdk/target/classes:/Users/gaojiayi/.m2/repository/junit/junit/4.12/junit-4.12.jar:/Users/gaojiayi/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/gaojiayi/.m2/repository/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar:/Users/gaojiayi/.m2/repository/org/mockito/mockito-core/2.18.3/mockito-core-2.18.3.jar:/Users/gaojiayi/.m2/repository/net/bytebuddy/byte-buddy/1.8.5/byte-buddy-1.8.5.jar:/Users/gaojiayi/.m2/repository/net/bytebuddy/byte-buddy-agent/1.8.5/byte-buddy-agent-1.8.5.jar:/Users/gaojiayi/.m2/repository/org/objenesis/objenesis/2.6/objenesis-2.6.jar:/Users/gaojiayi/.m2/repository/cglib/cglib-nodep/2.2/cglib-nodep-2.2.jar com.alibaba.dubbo.config.DubboDemoForProvider
    [16/11/21 11:45:01:001 CST] main  INFO logger.LoggerFactory: using logger: com.alibaba.dubbo.common.logger.log4j.Log4jLoggerAdapter
    [16/11/21 11:45:17:017 CST] main  INFO config.AbstractConfig:  [DUBBO] Export dubbo service com.alibaba.dubbo.config.api.DemoService to local registry, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:45:17:017 CST] main  INFO config.AbstractConfig:  [DUBBO] Export dubbo service com.alibaba.dubbo.config.api.DemoService to url dubbo://192.168.0.102:20880/com.alibaba.dubbo.config.api.DemoService?anyhost=true&application=dubbo-demo-api-provider&bind.ip=192.168.0.102&bind.port=20880&dubbo=2.0.2&generic=false&interface=com.alibaba.dubbo.config.api.DemoService&methods=sayName,getUsers,echo,getBox,throwDemoException&pid=7334&side=provider&timestamp=1637077507099, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:45:17:017 CST] main  INFO config.AbstractConfig:  [DUBBO] Register dubbo service com.alibaba.dubbo.config.api.DemoService url dubbo://192.168.0.102:20880/com.alibaba.dubbo.config.api.DemoService?anyhost=true&application=dubbo-demo-api-provider&bind.ip=192.168.0.102&bind.port=20880&dubbo=2.0.2&generic=false&interface=com.alibaba.dubbo.config.api.DemoService&methods=sayName,getUsers,echo,getBox,throwDemoException&pid=7334&side=provider&timestamp=1637077507099 to registry registry://127.0.0.1:2181/com.alibaba.dubbo.registry.RegistryService?application=dubbo-demo-api-provider&dubbo=2.0.2&pid=7334&registry=zookeeper&timestamp=1637077502053, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:45:22:022 CST] main  INFO transport.AbstractServer:  [DUBBO] Start NettyServer bind /0.0.0.0:20880, export /192.168.0.102:20880, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:45:27:027 CST] main  INFO imps.CuratorFrameworkImpl: Starting
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:zookeeper.version=3.4.9-1757313, built on 08/23/2016 06:50 GMT
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:host.name=192.168.0.102
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.version=1.8.0_181
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.vendor=Oracle Corporation
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.class.path=/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/cldrdata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/jaccess.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/nashorn.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jfxswt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/ant-javafx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/javafx-mx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/jconsole.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/packager.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/sa-jdi.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/tools.jar:/Users/gaojiayi/dubbo/dubbo-config/dubbo-config-api/target/test-classes:/Users/gaojiayi/dubbo/dubbo-config/dubbo-config-api/target/classes:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-zookeeper/target/classes:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-api/target/classes:/Users/gaojiayi/dubbo/dubbo-cluster/target/classes:/Users/gaojiayi/dubbo/dubbo-remoting/dubbo-remoting-zookeeper/target/classes:/Users/gaojiayi/.m2/repository/org/apache/zookeeper/zookeeper/3.4.9/zookeeper-3.4.9.jar:/Users/gaojiayi/.m2/repository/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar:/Users/gaojiayi/.m2/repository/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.jar:/Users/gaojiayi/.m2/repository/jline/jline/0.9.94/jline-0.9.94.jar:/Users/gaojiayi/.m2/repository/io/netty/netty/3.10.5.Final/netty-3.10.5.Final.jar:/Users/gaojiayi/.m2/repository/com/101tec/zkclient/0.2/zkclient-0.2.jar:/Users/gaojiayi/.m2/repository/org/apache/curator/curator-framework/2.12.0/curator-framework-2.12.0.jar:/Users/gaojiayi/.m2/repository/org/apache/curator/curator-client/2.12.0/curator-client-2.12.0.jar:/Users/gaojiayi/.m2/repository/com/google/guava/guava/16.0.1/guava-16.0.1.jar:/Users/gaojiayi/dubbo/dubbo-monitor/dubbo-monitor-api/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-api/target/classes:/Users/gaojiayi/dubbo/dubbo-remoting/dubbo-remoting-api/target/classes:/Users/gaojiayi/dubbo/dubbo-common/target/classes:/Users/gaojiayi/.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar:/Users/gaojiayi/.m2/repository/log4j/log4j/1.2.16/log4j-1.2.16.jar:/Users/gaojiayi/.m2/repository/org/javassist/javassist/3.20.0-GA/javassist-3.20.0-GA.jar:/Users/gaojiayi/.m2/repository/com/alibaba/fastjson/1.2.46/fastjson-1.2.46.jar:/Users/gaojiayi/.m2/repository/com/esotericsoftware/kryo/4.0.1/kryo-4.0.1.jar:/Users/gaojiayi/.m2/repository/com/esotericsoftware/reflectasm/1.11.3/reflectasm-1.11.3.jar:/Users/gaojiayi/.m2/repository/org/ow2/asm/asm/5.0.4/asm-5.0.4.jar:/Users/gaojiayi/.m2/repository/com/esotericsoftware/minlog/1.3.0/minlog-1.3.0.jar:/Users/gaojiayi/.m2/repository/de/javakaffee/kryo-serializers/0.42/kryo-serializers-0.42.jar:/Users/gaojiayi/.m2/repository/de/ruedigermoeller/fst/2.48-jdk-6/fst-2.48-jdk-6.jar:/Users/gaojiayi/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.8.6/jackson-core-2.8.6.jar:/Users/gaojiayi/.m2/repository/com/cedarsoftware/java-util/1.9.0/java-util-1.9.0.jar:/Users/gaojiayi/.m2/repository/com/cedarsoftware/json-io/2.5.1/json-io-2.5.1.jar:/Users/gaojiayi/dubbo/dubbo-serialization/dubbo-serialization-api/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-injvm/target/classes:/Users/gaojiayi/dubbo/dubbo-filter/dubbo-filter-validation/target/classes:/Users/gaojiayi/dubbo/dubbo-filter/dubbo-filter-cache/target/classes:/Users/gaojiayi/.m2/repository/javax/cache/cache-api/1.0.0/cache-api-1.0.0.jar:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-default/target/classes:/Users/gaojiayi/dubbo/dubbo-monitor/dubbo-monitor-default/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-dubbo/target/classes:/Users/gaojiayi/dubbo/dubbo-container/dubbo-container-api/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-rmi/target/classes:/Users/gaojiayi/.m2/repository/org/springframework/spring-context/4.3.16.RELEASE/spring-context-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-aop/4.3.16.RELEASE/spring-aop-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-beans/4.3.16.RELEASE/spring-beans-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-core/4.3.16.RELEASE/spring-core-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-expression/4.3.16.RELEASE/spring-expression-4.3.16.RELEASE.jar:/Users/gaojiayi/dubbo/dubbo-remoting/dubbo-remoting-netty4/target/classes:/Users/gaojiayi/.m2/repository/io/netty/netty-all/4.1.25.Final/netty-all-4.1.25.Final.jar:/Users/gaojiayi/.m2/repository/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final.jar:/Users/gaojiayi/.m2/repository/org/hibernate/hibernate-validator/5.4.1.Final/hibernate-validator-5.4.1.Final.jar:/Users/gaojiayi/.m2/repository/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final.jar:/Users/gaojiayi/.m2/repository/com/fasterxml/classmate/1.3.1/classmate-1.3.1.jar:/Users/gaojiayi/.m2/repository/org/glassfish/javax.el/3.0.1-b08/javax.el-3.0.1-b08.jar:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-multicast/target/classes:/Users/gaojiayi/dubbo/dubbo-serialization/dubbo-serialization-hessian2/target/classes:/Users/gaojiayi/.m2/repository/com/alibaba/hessian-lite/3.2.5/hessian-lite-3.2.5.jar:/Users/gaojiayi/dubbo/dubbo-serialization/dubbo-serialization-jdk/target/classes:/Users/gaojiayi/.m2/repository/junit/junit/4.12/junit-4.12.jar:/Users/gaojiayi/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/gaojiayi/.m2/repository/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar:/Users/gaojiayi/.m2/repository/org/mockito/mockito-core/2.18.3/mockito-core-2.18.3.jar:/Users/gaojiayi/.m2/repository/net/bytebuddy/byte-buddy/1.8.5/byte-buddy-1.8.5.jar:/Users/gaojiayi/.m2/repository/net/bytebuddy/byte-buddy-agent/1.8.5/byte-buddy-agent-1.8.5.jar:/Users/gaojiayi/.m2/repository/org/objenesis/objenesis/2.6/objenesis-2.6.jar:/Users/gaojiayi/.m2/repository/cglib/cglib-nodep/2.2/cglib-nodep-2.2.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.library.path=/Users/gaojiayi/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.io.tmpdir=/var/folders/42/r1mm3v6d49qdhfxrlm68h0040000gn/T/
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.compiler=<NA>
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:os.name=Mac OS X
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:os.arch=x86_64
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:os.version=10.16
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:user.name=gaojiayi
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:user.home=/Users/gaojiayi
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Client environment:user.dir=/Users/gaojiayi/dubbo
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZooKeeper: Initiating client connection, connectString=127.0.0.1:2181 sessionTimeout=60000 watcher=org.apache.curator.ConnectionState@4a22f9e2
    [16/11/21 11:45:32:032 CST] main-SendThread(127.0.0.1:2181)  INFO zookeeper.ClientCnxn: Opening socket connection to server 127.0.0.1/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknown error)
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZookeeperRegistry:  [DUBBO] Register: dubbo://192.168.0.102:20880/com.alibaba.dubbo.config.api.DemoService?anyhost=true&application=dubbo-demo-api-provider&dubbo=2.0.2&generic=false&interface=com.alibaba.dubbo.config.api.DemoService&methods=sayName,getUsers,echo,getBox,throwDemoException&pid=7334&side=provider&timestamp=1637077507099, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:45:32:032 CST] main-SendThread(127.0.0.1:2181)  INFO zookeeper.ClientCnxn: Socket connection established to 127.0.0.1/127.0.0.1:2181, initiating session
    [16/11/21 11:45:32:032 CST] main-SendThread(127.0.0.1:2181)  INFO zookeeper.ClientCnxn: Session establishment complete on server 127.0.0.1/127.0.0.1:2181, sessionid = 0x1000340b9690000, negotiated timeout = 40000
    [16/11/21 11:45:32:032 CST] main-EventThread  INFO state.ConnectionStateManager: State change: CONNECTED
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZookeeperRegistry:  [DUBBO] Subscribe: provider://192.168.0.102:20880/com.alibaba.dubbo.config.api.DemoService?anyhost=true&application=dubbo-demo-api-provider&category=configurators&check=false&dubbo=2.0.2&generic=false&interface=com.alibaba.dubbo.config.api.DemoService&methods=sayName,getUsers,echo,getBox,throwDemoException&pid=7334&side=provider&timestamp=1637077507099, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:45:32:032 CST] main  INFO zookeeper.ZookeeperRegistry:  [DUBBO] Notify urls for subscribe url provider://192.168.0.102:20880/com.alibaba.dubbo.config.api.DemoService?anyhost=true&application=dubbo-demo-api-provider&category=configurators&check=false&dubbo=2.0.2&generic=false&interface=com.alibaba.dubbo.config.api.DemoService&methods=sayName,getUsers,echo,getBox,throwDemoException&pid=7334&side=provider&timestamp=1637077507099, urls: [empty://192.168.0.102:20880/com.alibaba.dubbo.config.api.DemoService?anyhost=true&application=dubbo-demo-api-provider&category=configurators&check=false&dubbo=2.0.2&generic=false&interface=com.alibaba.dubbo.config.api.DemoService&methods=sayName,getUsers,echo,getBox,throwDemoException&pid=7334&side=provider&timestamp=1637077507099], dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] NettyServerWorker-3-1  WARN transport.AbstractServer:  [DUBBO] All clients has discontected from /192.168.0.102:20880. You can graceful shutdown now., dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] DubboServerHandler-192.168.0.102:20880-thread-3  INFO dubbo.DubboProtocol:  [DUBBO] disconnected from /192.168.0.102:49465,url:dubbo://192.168.0.102:20880/com.alibaba.dubbo.config.api.DemoService?anyhost=true&application=dubbo-demo-api-provider&bind.ip=192.168.0.102&bind.port=20880&channel.readonly.sent=true&codec=dubbo&dubbo=2.0.2&generic=false&heartbeat=60000&interface=com.alibaba.dubbo.config.api.DemoService&methods=sayName,getUsers,echo,getBox,throwDemoException&pid=7334&side=provider&timestamp=1637077507099, dubbo version: , current host: 192.168.0.102

    服务消费者日志

    /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/bin/java -javaagent:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar=49459:/Applications/IntelliJ IDEA CE.app/Contents/bin -Dfile.encoding=UTF-8 -classpath /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/cldrdata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/jaccess.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/nashorn.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jfxswt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/ant-javafx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/javafx-mx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/jconsole.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/packager.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/sa-jdi.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/tools.jar:/Users/gaojiayi/dubbo/dubbo-config/dubbo-config-api/target/test-classes:/Users/gaojiayi/dubbo/dubbo-config/dubbo-config-api/target/classes:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-zookeeper/target/classes:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-api/target/classes:/Users/gaojiayi/dubbo/dubbo-cluster/target/classes:/Users/gaojiayi/dubbo/dubbo-remoting/dubbo-remoting-zookeeper/target/classes:/Users/gaojiayi/.m2/repository/org/apache/zookeeper/zookeeper/3.4.9/zookeeper-3.4.9.jar:/Users/gaojiayi/.m2/repository/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar:/Users/gaojiayi/.m2/repository/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.jar:/Users/gaojiayi/.m2/repository/jline/jline/0.9.94/jline-0.9.94.jar:/Users/gaojiayi/.m2/repository/io/netty/netty/3.10.5.Final/netty-3.10.5.Final.jar:/Users/gaojiayi/.m2/repository/com/101tec/zkclient/0.2/zkclient-0.2.jar:/Users/gaojiayi/.m2/repository/org/apache/curator/curator-framework/2.12.0/curator-framework-2.12.0.jar:/Users/gaojiayi/.m2/repository/org/apache/curator/curator-client/2.12.0/curator-client-2.12.0.jar:/Users/gaojiayi/.m2/repository/com/google/guava/guava/16.0.1/guava-16.0.1.jar:/Users/gaojiayi/dubbo/dubbo-monitor/dubbo-monitor-api/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-api/target/classes:/Users/gaojiayi/dubbo/dubbo-remoting/dubbo-remoting-api/target/classes:/Users/gaojiayi/dubbo/dubbo-common/target/classes:/Users/gaojiayi/.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar:/Users/gaojiayi/.m2/repository/log4j/log4j/1.2.16/log4j-1.2.16.jar:/Users/gaojiayi/.m2/repository/org/javassist/javassist/3.20.0-GA/javassist-3.20.0-GA.jar:/Users/gaojiayi/.m2/repository/com/alibaba/fastjson/1.2.46/fastjson-1.2.46.jar:/Users/gaojiayi/.m2/repository/com/esotericsoftware/kryo/4.0.1/kryo-4.0.1.jar:/Users/gaojiayi/.m2/repository/com/esotericsoftware/reflectasm/1.11.3/reflectasm-1.11.3.jar:/Users/gaojiayi/.m2/repository/org/ow2/asm/asm/5.0.4/asm-5.0.4.jar:/Users/gaojiayi/.m2/repository/com/esotericsoftware/minlog/1.3.0/minlog-1.3.0.jar:/Users/gaojiayi/.m2/repository/de/javakaffee/kryo-serializers/0.42/kryo-serializers-0.42.jar:/Users/gaojiayi/.m2/repository/de/ruedigermoeller/fst/2.48-jdk-6/fst-2.48-jdk-6.jar:/Users/gaojiayi/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.8.6/jackson-core-2.8.6.jar:/Users/gaojiayi/.m2/repository/com/cedarsoftware/java-util/1.9.0/java-util-1.9.0.jar:/Users/gaojiayi/.m2/repository/com/cedarsoftware/json-io/2.5.1/json-io-2.5.1.jar:/Users/gaojiayi/dubbo/dubbo-serialization/dubbo-serialization-api/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-injvm/target/classes:/Users/gaojiayi/dubbo/dubbo-filter/dubbo-filter-validation/target/classes:/Users/gaojiayi/dubbo/dubbo-filter/dubbo-filter-cache/target/classes:/Users/gaojiayi/.m2/repository/javax/cache/cache-api/1.0.0/cache-api-1.0.0.jar:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-default/target/classes:/Users/gaojiayi/dubbo/dubbo-monitor/dubbo-monitor-default/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-dubbo/target/classes:/Users/gaojiayi/dubbo/dubbo-container/dubbo-container-api/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-rmi/target/classes:/Users/gaojiayi/.m2/repository/org/springframework/spring-context/4.3.16.RELEASE/spring-context-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-aop/4.3.16.RELEASE/spring-aop-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-beans/4.3.16.RELEASE/spring-beans-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-core/4.3.16.RELEASE/spring-core-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-expression/4.3.16.RELEASE/spring-expression-4.3.16.RELEASE.jar:/Users/gaojiayi/dubbo/dubbo-remoting/dubbo-remoting-netty4/target/classes:/Users/gaojiayi/.m2/repository/io/netty/netty-all/4.1.25.Final/netty-all-4.1.25.Final.jar:/Users/gaojiayi/.m2/repository/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final.jar:/Users/gaojiayi/.m2/repository/org/hibernate/hibernate-validator/5.4.1.Final/hibernate-validator-5.4.1.Final.jar:/Users/gaojiayi/.m2/repository/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final.jar:/Users/gaojiayi/.m2/repository/com/fasterxml/classmate/1.3.1/classmate-1.3.1.jar:/Users/gaojiayi/.m2/repository/org/glassfish/javax.el/3.0.1-b08/javax.el-3.0.1-b08.jar:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-multicast/target/classes:/Users/gaojiayi/dubbo/dubbo-serialization/dubbo-serialization-hessian2/target/classes:/Users/gaojiayi/.m2/repository/com/alibaba/hessian-lite/3.2.5/hessian-lite-3.2.5.jar:/Users/gaojiayi/dubbo/dubbo-serialization/dubbo-serialization-jdk/target/classes:/Users/gaojiayi/.m2/repository/junit/junit/4.12/junit-4.12.jar:/Users/gaojiayi/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/gaojiayi/.m2/repository/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar:/Users/gaojiayi/.m2/repository/org/mockito/mockito-core/2.18.3/mockito-core-2.18.3.jar:/Users/gaojiayi/.m2/repository/net/bytebuddy/byte-buddy/1.8.5/byte-buddy-1.8.5.jar:/Users/gaojiayi/.m2/repository/net/bytebuddy/byte-buddy-agent/1.8.5/byte-buddy-agent-1.8.5.jar:/Users/gaojiayi/.m2/repository/org/objenesis/objenesis/2.6/objenesis-2.6.jar:/Users/gaojiayi/.m2/repository/cglib/cglib-nodep/2.2/cglib-nodep-2.2.jar com.alibaba.dubbo.config.DubboDemoForConsumer
    [16/11/21 11:46:36:036 CST] main  INFO logger.LoggerFactory: using logger: com.alibaba.dubbo.common.logger.log4j.Log4jLoggerAdapter
    [16/11/21 11:46:51:051 CST] main  INFO imps.CuratorFrameworkImpl: Starting
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:zookeeper.version=3.4.9-1757313, built on 08/23/2016 06:50 GMT
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:host.name=192.168.0.102
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.version=1.8.0_181
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.vendor=Oracle Corporation
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.class.path=/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/cldrdata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/jaccess.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/nashorn.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jfxswt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/ant-javafx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/javafx-mx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/jconsole.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/packager.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/sa-jdi.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/lib/tools.jar:/Users/gaojiayi/dubbo/dubbo-config/dubbo-config-api/target/test-classes:/Users/gaojiayi/dubbo/dubbo-config/dubbo-config-api/target/classes:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-zookeeper/target/classes:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-api/target/classes:/Users/gaojiayi/dubbo/dubbo-cluster/target/classes:/Users/gaojiayi/dubbo/dubbo-remoting/dubbo-remoting-zookeeper/target/classes:/Users/gaojiayi/.m2/repository/org/apache/zookeeper/zookeeper/3.4.9/zookeeper-3.4.9.jar:/Users/gaojiayi/.m2/repository/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar:/Users/gaojiayi/.m2/repository/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.jar:/Users/gaojiayi/.m2/repository/jline/jline/0.9.94/jline-0.9.94.jar:/Users/gaojiayi/.m2/repository/io/netty/netty/3.10.5.Final/netty-3.10.5.Final.jar:/Users/gaojiayi/.m2/repository/com/101tec/zkclient/0.2/zkclient-0.2.jar:/Users/gaojiayi/.m2/repository/org/apache/curator/curator-framework/2.12.0/curator-framework-2.12.0.jar:/Users/gaojiayi/.m2/repository/org/apache/curator/curator-client/2.12.0/curator-client-2.12.0.jar:/Users/gaojiayi/.m2/repository/com/google/guava/guava/16.0.1/guava-16.0.1.jar:/Users/gaojiayi/dubbo/dubbo-monitor/dubbo-monitor-api/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-api/target/classes:/Users/gaojiayi/dubbo/dubbo-remoting/dubbo-remoting-api/target/classes:/Users/gaojiayi/dubbo/dubbo-common/target/classes:/Users/gaojiayi/.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar:/Users/gaojiayi/.m2/repository/log4j/log4j/1.2.16/log4j-1.2.16.jar:/Users/gaojiayi/.m2/repository/org/javassist/javassist/3.20.0-GA/javassist-3.20.0-GA.jar:/Users/gaojiayi/.m2/repository/com/alibaba/fastjson/1.2.46/fastjson-1.2.46.jar:/Users/gaojiayi/.m2/repository/com/esotericsoftware/kryo/4.0.1/kryo-4.0.1.jar:/Users/gaojiayi/.m2/repository/com/esotericsoftware/reflectasm/1.11.3/reflectasm-1.11.3.jar:/Users/gaojiayi/.m2/repository/org/ow2/asm/asm/5.0.4/asm-5.0.4.jar:/Users/gaojiayi/.m2/repository/com/esotericsoftware/minlog/1.3.0/minlog-1.3.0.jar:/Users/gaojiayi/.m2/repository/de/javakaffee/kryo-serializers/0.42/kryo-serializers-0.42.jar:/Users/gaojiayi/.m2/repository/de/ruedigermoeller/fst/2.48-jdk-6/fst-2.48-jdk-6.jar:/Users/gaojiayi/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.8.6/jackson-core-2.8.6.jar:/Users/gaojiayi/.m2/repository/com/cedarsoftware/java-util/1.9.0/java-util-1.9.0.jar:/Users/gaojiayi/.m2/repository/com/cedarsoftware/json-io/2.5.1/json-io-2.5.1.jar:/Users/gaojiayi/dubbo/dubbo-serialization/dubbo-serialization-api/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-injvm/target/classes:/Users/gaojiayi/dubbo/dubbo-filter/dubbo-filter-validation/target/classes:/Users/gaojiayi/dubbo/dubbo-filter/dubbo-filter-cache/target/classes:/Users/gaojiayi/.m2/repository/javax/cache/cache-api/1.0.0/cache-api-1.0.0.jar:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-default/target/classes:/Users/gaojiayi/dubbo/dubbo-monitor/dubbo-monitor-default/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-dubbo/target/classes:/Users/gaojiayi/dubbo/dubbo-container/dubbo-container-api/target/classes:/Users/gaojiayi/dubbo/dubbo-rpc/dubbo-rpc-rmi/target/classes:/Users/gaojiayi/.m2/repository/org/springframework/spring-context/4.3.16.RELEASE/spring-context-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-aop/4.3.16.RELEASE/spring-aop-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-beans/4.3.16.RELEASE/spring-beans-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-core/4.3.16.RELEASE/spring-core-4.3.16.RELEASE.jar:/Users/gaojiayi/.m2/repository/org/springframework/spring-expression/4.3.16.RELEASE/spring-expression-4.3.16.RELEASE.jar:/Users/gaojiayi/dubbo/dubbo-remoting/dubbo-remoting-netty4/target/classes:/Users/gaojiayi/.m2/repository/io/netty/netty-all/4.1.25.Final/netty-all-4.1.25.Final.jar:/Users/gaojiayi/.m2/repository/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final.jar:/Users/gaojiayi/.m2/repository/org/hibernate/hibernate-validator/5.4.1.Final/hibernate-validator-5.4.1.Final.jar:/Users/gaojiayi/.m2/repository/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final.jar:/Users/gaojiayi/.m2/repository/com/fasterxml/classmate/1.3.1/classmate-1.3.1.jar:/Users/gaojiayi/.m2/repository/org/glassfish/javax.el/3.0.1-b08/javax.el-3.0.1-b08.jar:/Users/gaojiayi/dubbo/dubbo-registry/dubbo-registry-multicast/target/classes:/Users/gaojiayi/dubbo/dubbo-serialization/dubbo-serialization-hessian2/target/classes:/Users/gaojiayi/.m2/repository/com/alibaba/hessian-lite/3.2.5/hessian-lite-3.2.5.jar:/Users/gaojiayi/dubbo/dubbo-serialization/dubbo-serialization-jdk/target/classes:/Users/gaojiayi/.m2/repository/junit/junit/4.12/junit-4.12.jar:/Users/gaojiayi/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/gaojiayi/.m2/repository/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar:/Users/gaojiayi/.m2/repository/org/mockito/mockito-core/2.18.3/mockito-core-2.18.3.jar:/Users/gaojiayi/.m2/repository/net/bytebuddy/byte-buddy/1.8.5/byte-buddy-1.8.5.jar:/Users/gaojiayi/.m2/repository/net/bytebuddy/byte-buddy-agent/1.8.5/byte-buddy-agent-1.8.5.jar:/Users/gaojiayi/.m2/repository/org/objenesis/objenesis/2.6/objenesis-2.6.jar:/Users/gaojiayi/.m2/repository/cglib/cglib-nodep/2.2/cglib-nodep-2.2.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.library.path=/Users/gaojiayi/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.io.tmpdir=/var/folders/42/r1mm3v6d49qdhfxrlm68h0040000gn/T/
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:java.compiler=<NA>
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:os.name=Mac OS X
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:os.arch=x86_64
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:os.version=10.16
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:user.name=gaojiayi
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:user.home=/Users/gaojiayi
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Client environment:user.dir=/Users/gaojiayi/dubbo
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZooKeeper: Initiating client connection, connectString=localhost:2181 sessionTimeout=60000 watcher=org.apache.curator.ConnectionState@37d31475
    [16/11/21 11:46:56:056 CST] main-SendThread(localhost:2181)  INFO zookeeper.ClientCnxn: Opening socket connection to server localhost/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknown error)
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZookeeperRegistry:  [DUBBO] Register: consumer://192.168.0.102/com.alibaba.dubbo.config.api.DemoService?application=dubbo-demo-api-consumer&category=consumers&check=false&dubbo=2.0.2&interface=com.alibaba.dubbo.config.api.DemoService&methods=getUsers,sayName,echo,getBox,throwDemoException&pid=7344&side=consumer&timestamp=1637077596462, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:46:56:056 CST] main-SendThread(localhost:2181)  INFO zookeeper.ClientCnxn: Socket connection established to localhost/127.0.0.1:2181, initiating session
    [16/11/21 11:46:56:056 CST] main-SendThread(localhost:2181)  INFO zookeeper.ClientCnxn: Session establishment complete on server localhost/127.0.0.1:2181, sessionid = 0x1000340b9690001, negotiated timeout = 40000
    [16/11/21 11:46:56:056 CST] main-EventThread  INFO state.ConnectionStateManager: State change: CONNECTED
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZookeeperRegistry:  [DUBBO] Subscribe: consumer://192.168.0.102/com.alibaba.dubbo.config.api.DemoService?application=dubbo-demo-api-consumer&category=providers,configurators,routers&dubbo=2.0.2&interface=com.alibaba.dubbo.config.api.DemoService&methods=getUsers,sayName,echo,getBox,throwDemoException&pid=7344&side=consumer&timestamp=1637077596462, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:46:56:056 CST] main  INFO zookeeper.ZookeeperRegistry:  [DUBBO] Notify urls for subscribe url consumer://192.168.0.102/com.alibaba.dubbo.config.api.DemoService?application=dubbo-demo-api-consumer&category=providers,configurators,routers&dubbo=2.0.2&interface=com.alibaba.dubbo.config.api.DemoService&methods=getUsers,sayName,echo,getBox,throwDemoException&pid=7344&side=consumer&timestamp=1637077596462, urls: [dubbo://192.168.0.102:20880/com.alibaba.dubbo.config.api.DemoService?anyhost=true&application=dubbo-demo-api-provider&dubbo=2.0.2&generic=false&interface=com.alibaba.dubbo.config.api.DemoService&methods=sayName,getUsers,echo,getBox,throwDemoException&pid=7334&side=provider&timestamp=1637077507099, empty://192.168.0.102/com.alibaba.dubbo.config.api.DemoService?application=dubbo-demo-api-consumer&category=configurators&dubbo=2.0.2&interface=com.alibaba.dubbo.config.api.DemoService&methods=getUsers,sayName,echo,getBox,throwDemoException&pid=7344&side=consumer&timestamp=1637077596462, empty://192.168.0.102/com.alibaba.dubbo.config.api.DemoService?application=dubbo-demo-api-consumer&category=routers&dubbo=2.0.2&interface=com.alibaba.dubbo.config.api.DemoService&methods=getUsers,sayName,echo,getBox,throwDemoException&pid=7344&side=consumer&timestamp=1637077596462], dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:01:001 CST] main  INFO transport.AbstractClient:  [DUBBO] Successed connect to server /192.168.0.102:20880 from NettyClient 192.168.0.102 using dubbo version , channel is NettyChannel [channel=[id: 0xc9af3da0, L:/192.168.0.102:49465 - R:/192.168.0.102:20880]], dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:01:001 CST] main  INFO transport.AbstractClient:  [DUBBO] Start NettyClient gaojiayideMacBook-Pro.local/192.168.0.102 connect to the server /192.168.0.102:20880, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] main  INFO config.AbstractConfig:  [DUBBO] Refer dubbo service com.alibaba.dubbo.config.api.DemoService from url zookeeper://localhost:2181/com.alibaba.dubbo.registry.RegistryService?anyhost=true&application=dubbo-demo-api-consumer&check=false&dubbo=2.0.2&generic=false&interface=com.alibaba.dubbo.config.api.DemoService&methods=getUsers,sayName,echo,getBox,throwDemoException&pid=7344&register.ip=192.168.0.102&remote.timestamp=1637077507099&side=consumer&timestamp=1637077596462, dubbo version: , current host: 192.168.0.102
    say:dubbo
    [16/11/21 11:47:02:002 CST] DubboShutdownHook  INFO config.DubboShutdownHook:  [DUBBO] Run shutdown hook now., dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] DubboShutdownHook  INFO support.AbstractRegistryFactory:  [DUBBO] Close all registries [zookeeper://localhost:2181/com.alibaba.dubbo.registry.RegistryService?application=dubbo-demo-api-consumer&dubbo=2.0.2&interface=com.alibaba.dubbo.registry.RegistryService&pid=7344&timestamp=1637077606522], dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] DubboShutdownHook  INFO zookeeper.ZookeeperRegistry:  [DUBBO] Destroy registry:zookeeper://localhost:2181/com.alibaba.dubbo.registry.RegistryService?application=dubbo-demo-api-consumer&dubbo=2.0.2&interface=com.alibaba.dubbo.registry.RegistryService&pid=7344&timestamp=1637077606522, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] DubboShutdownHook  INFO zookeeper.ZookeeperRegistry:  [DUBBO] Unregister: consumer://192.168.0.102/com.alibaba.dubbo.config.api.DemoService?application=dubbo-demo-api-consumer&category=consumers&check=false&dubbo=2.0.2&interface=com.alibaba.dubbo.config.api.DemoService&methods=getUsers,sayName,echo,getBox,throwDemoException&pid=7344&side=consumer&timestamp=1637077596462, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] DubboShutdownHook  INFO zookeeper.ZookeeperRegistry:  [DUBBO] Destroy unregister url consumer://192.168.0.102/com.alibaba.dubbo.config.api.DemoService?application=dubbo-demo-api-consumer&category=consumers&check=false&dubbo=2.0.2&interface=com.alibaba.dubbo.config.api.DemoService&methods=getUsers,sayName,echo,getBox,throwDemoException&pid=7344&side=consumer&timestamp=1637077596462, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] DubboShutdownHook  INFO zookeeper.ZookeeperRegistry:  [DUBBO] Unsubscribe: consumer://192.168.0.102/com.alibaba.dubbo.config.api.DemoService?application=dubbo-demo-api-consumer&category=providers,configurators,routers&dubbo=2.0.2&interface=com.alibaba.dubbo.config.api.DemoService&methods=getUsers,sayName,echo,getBox,throwDemoException&pid=7344&side=consumer&timestamp=1637077596462, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] DubboShutdownHook  INFO zookeeper.ZookeeperRegistry:  [DUBBO] Destroy unsubscribe url consumer://192.168.0.102/com.alibaba.dubbo.config.api.DemoService?application=dubbo-demo-api-consumer&category=providers,configurators,routers&dubbo=2.0.2&interface=com.alibaba.dubbo.config.api.DemoService&methods=getUsers,sayName,echo,getBox,throwDemoException&pid=7344&side=consumer&timestamp=1637077596462, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] Curator-Framework-0  INFO imps.CuratorFrameworkImpl: backgroundOperationsLoop exiting
    [16/11/21 11:47:02:002 CST] DubboShutdownHook  INFO zookeeper.ZooKeeper: Session: 0x1000340b9690001 closed
    [16/11/21 11:47:02:002 CST] main-EventThread  INFO zookeeper.ClientCnxn: EventThread shut down for session: 0x1000340b9690001
    [16/11/21 11:47:02:002 CST] DubboShutdownHook  INFO dubbo.DubboProtocol:  [DUBBO] Close dubbo connect: /192.168.0.102:49465-->/192.168.0.102:20880, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] DubboShutdownHook  INFO netty4.NettyChannel:  [DUBBO] Close netty channel [id: 0xc9af3da0, L:/192.168.0.102:49465 - R:/192.168.0.102:20880], dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] DubboShutdownHook  INFO dubbo.DubboProtocol:  [DUBBO] Close dubbo connect: 192.168.0.102:0-->192.168.0.102:20880, dubbo version: , current host: 192.168.0.102
    [16/11/21 11:47:02:002 CST] DubboShutdownHook  INFO dubbo.DubboProtocol:  [DUBBO] Destroy reference: dubbo://192.168.0.102:20880/com.alibaba.dubbo.config.api.DemoService?anyhost=true&application=dubbo-demo-api-consumer&check=false&dubbo=2.0.2&generic=false&interface=com.alibaba.dubbo.config.api.DemoService&methods=sayName,getUsers,echo,getBox,throwDemoException&pid=7344&register.ip=192.168.0.102&remote.timestamp=1637077507099&side=consumer&timestamp=1637077596462, dubbo version: , current host: 192.168.0.102
    
    Process finished with exit code 0

    可以看到消费者已经成功调用远程服务,那么具体是如何运行的,将会在后续的章节中给大家详细解读。

  • 相关阅读:
    对OpenCV学习笔记(1)遗留问题的思考
    转:争论32bit/64bit的人都搞错了方向,需要分清楚IA64和x64
    Win8_64bit+VS2012下的OpenCV学习笔记(1)
    pikachu练习平台-不安全的文件下载
    pikachu练习平台-文件包含漏洞(Files Inclusion)
    pikachu练习平台-RCE(远程系统命令、代码执行)
    pikachu练习平台(SQL注入 )
    pikachu练习平台(CSRF(跨站请求伪造) )
    pikachu练习平台(XSS-漏洞测试案例(cookie的窃取和利用、钓鱼攻击、XSS获取键盘记录))
    pikachu练习平台(XSS(跨站脚本))
  • 原文地址:https://www.cnblogs.com/gaojy/p/15563747.html
Copyright © 2011-2022 走看看