<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://code.alibabatech.com/schema/dubbo
http://code.alibabatech.com/schema/dubbo/dubbo.xsd">
<!-- 提供方应用信息,用于计算依赖关系 -->
<dubbo:application name="provider-of-hello-world" />
<!-- 使用zookeeper注册中心暴露服务地址 -->
<dubbo:registry address="zookeeper://192.168.30.81:4180" />
<!-- 用dubbo协议在20880端口暴露服务 ,注意不能与其他服务端口相同 -->
<!-- dispatcher all所有请求都发到线程池处理,threadpool fixed固定线程池大小,初始化后不进行伸缩,threads 线程池内线程个数 -->
<!-- <dubbo:protocol accesslog="true" />开启访问日志记录 -->
<!-- <dubbo:protocol accesslog="http://10.20.160.198/wiki/display/dubbo/foo/bar.log" />规定访问日志的路径 -->
<!-- <dubbo:protocol name="dubbo" connections="2" accepts="1000"/> dubbo协议使用长连接和nio,这里connections=2表示同时建立两个长连接(要在provier和consumer同时写上)accepts=1000 表示为了防止同时过来大量连接而被干掉,限制最大为1000-->
<dubbo:protocol name="dubbo" port="20880" />
<!-- 声明需要暴露的服务接口 -->
<!-- 将服务service封装成可以对外开放的服务, 同时提供负载均衡算法,loadbalance可选有random,roundrobin(轮询) -->
<!--service中加入 mock="return null"当service所有都挂掉以后,client调用时自动获取到return null -->
<!--service中加入 actives="10" 表示限制所有服务在每个客户端调用都不能同时超过10个 -->
<!--service中加入 executes="10" 表示限制所有服务在每个服务器端被调用都不能同时超过10个 -->
<!-- 可以在service中加入内部标签 <dubbo:method name="sayHello" actives="10" />来控制每个方法的执行并发个数 -->
<!-- timeout="300" retry="2" 超时时间300 重试2次 -->
<!-- owner=”WangHeping,Guoyong”该服务的负责人 -->
<dubbo:service interface="com.dubbo.provider.DemoService" ref="demoService" version="1.1.0"/>
<!-- 和本地bean一样实现服务 -->
<bean id="demoService" class="com.dubbo.provider.DemoServiceImpl" />
</beans>
示例项目:
https://github.com/tonfay/dubbo_Server