Dubbo
Dubbos是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成。
1. Provider是服务的提供者,向注册中心注册自己提供的服务。
2.Consumer是服务的消费者,向注册中心订阅自己所需的服务。
3.Provider和Consumer定时向监控中心发送统计的数据:调用次数和调用时间,默认是1分钟。
4.Monitor和Registry是可选项。
注意点:
1. 配置优先级:以timeout为例,配置主要分为三个级别:方法,接口和全局。在消费者方的配置的优先级:方法>接口>全局,在相同级别的配置情况下,消费者方的配置优先级高于提供者方。
2.注册中心:Multicast,Zookeeper,Redis和Simple,一般使用Zookeeper。
3.传输的协议支持:dubbo,rmi,hessian,http,webservice,thrift,memcached和redis。
4.配置方式:属性配置,XML配置,API配置和注解配置,一般使用XML配置。
理解:
1. Provider和Consumer是相对的,Provider也可以作为Consumer, Consumer同样也可以作为Provider。
2. 在Dubbo实例的时候需要引入一下的基本包,通过maven将其配置在pom.xml文件中,自动将所需的加载完成。
<dependency> <groupId>com.alibaba</groupId> <artifactId>dubbo</artifactId> <version>2.5.3</version> </dependency> <dependency> <groupId>com.github.sgroschupf</groupId> <artifactId>zkclient</artifactId> <version>0.1</version> </dependency> <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.4.6</version> </dependency> <dependency> <groupId>org.javassist</groupId> <artifactId>javassist</artifactId> <version>3.18.1-GA</version> </dependency> <dependency> <groupId>io.netty</groupId> <artifactId>netty</artifactId> <version>3.6.10.Final</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <version>1.7.9</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.1.1</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.9</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.9</version> </dependency>
3.如果可以对dubbo配置的多线程的状态进行监控,使用ThreadPoolStatusChecker类的对象调用check方法得到Status对象,通过该对象的getMessage方法得到dubbo多线程的运状态
4.dubbo常用的标签