dubbo框架xml配置实现

dubbo框架是一个RPC框架,即远程调用的框架;

正常的情况下,一个消费者(consumer),一个生产者(provider),在本次demo中为了便于管理我新加入了一个api

项目。在api中只有生产者提供给消费者的接口,然后由生产者实现接口,消费者最后远程调用。

关于dubbo的实现原理,与zookeeper的关系等这里不描述,仅仅记录xml的配置及一些注意点。直接贴配置代码


dubbo:application name="xxx" 这里的项目名可以随便写。目的是为了在注册中心区分消费者与生产者

dubbo:registry protocol =“zookeeper” address=“127.0.0.1:2181”这里是声明注册中心用的协议方式,与注册中心地址。在我这里用的是zookeeper。地址也是本机的。

dubbo:protocol name=“dubbo” port=“8093”这里是声明dubbo框架中生产者提供服务的方式与端口,要防止端口冲突

dubbo:service interface=“xx.xx.xxservice”ref="xxxImpl" retries="1" timeout=“6000”

这里是生产者提供服务的关键配置 interface 是指声明服务的接口,ref是指这个接口的实现类,这里是提供服务的具体实现

retries是指重新请求次数,timeout是指超时时间 


这是我统一声明实现类的bean。只需要声明具体class就行了。这里就是provider 的完整配置,启动服务之前要先启动zookeeper。要注意zookeeper的地址要跟你配置的地址相同。启动项目的时候读取配置文件。成功之后在dubbo_admin项目中就可以看见生产者栏目出现了你刚刚写的application name 

关于消费者的配置也是很相似


这里的注册中心address我用的是192.168.23.69,这个是我本机ip证明用本地回送地址和本地ip地址都可识别

在这里dubbo:reference id=“”interface=“”一个是声明调用服务id后面是声明服务的接口。要注意这里的接口跟provider里面配置的接口一定要是同一个。

配置很简单,在这个demo中我多加了一个api的项目就是为了便于接口管理。将api项目打成jar 包,让consumer和provider项目都引入这个包,这样的接口就不会出现问题

你可能感兴趣的:(dubbo)