dubbo服务超时时间设置以及优先级

一:dubbo服务超时时间设置以及优先级

dubbo服务超时时间有xml和注解两种方式进行实现配置超时功能。在配置范围上分为全部超时配置、接口类上超时配置、以及接口方法上超时配置。同类型上的配置消费端优先提供着端,靠近原则方法配置优先于接口类全局配置优先级最低。所以dubbo的超时时间优先级为:消费者Method>提供者method>消费者Reference>提供者Service>消费者全局配置provider>提供者全局配置consumer。

二、基于xml方式的超时配置

服务提供者xml方式超时配置如下

<dubbo:provider timeout=“5000”/> 全局配置

<dubbo:service timeout=“4000” …/> 接口类配置

<dubbo:method timeout=“3000” …> 方法配置

<?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://dubbo.apache.org/schema/dubbo"
       xsi:schemaLocation="http://www.springframework.org/schema/beans        http://www.springframework.org/schema/beans/spring-beans-4.3.xsd        http://dubbo.apache.org/schema/dubbo        http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
 
    <!-- 提供方应用信息,用于计算依赖关系 -->
    <dubbo:application name="user-service-provider"  />
 
    <!-- 使用zookeeper广播注册中心暴露服务地址 -->
    <dubbo:registry address="zookeeper://192.168.0.126:2181" />
 
    <!-- 用dubbo协议在20880端口暴露服务 -->
    <dubbo:protocol name="dubbo" port="20880" />
 
    <!-- 和本地bean一样实现服务 -->
    <bean id="userService" class="com.xiaohui.service.impl.UserServiceImpl" />
 
    <!-- 声明需要暴露的服务接口 timeout 接口类中全部方法超时配置 优先级2 -->
    <dubbo:service interface="com.xiaohui.service.UserService" ref="userService" timeout="4000" >
        <!-- 单个方法超时配置优先级最高1 -->
        <dubbo:method name="queryAllUserAddress" timeout="3000"></dubbo:method>
    </dubbo:service>
 
    <!-- 服务提供者全局超时时间配置优先级最低 -->
    <dubbo:provider timeout="5000"></dubbo:provider>
 
</beans>

服务消费者xml 方式配置如下

<dubbo:consumer timeout=“4000” > 全局配置

<dubbo:reference timeout=“3000” …> 接口类配置

<dubbo:method timeout=“2000” …> 方法配置

<?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://dubbo.apache.org/schema/dubbo"
       xsi:schemaLocation="http://www.springframework.org/schema/beans        http://www.springframework.org/schema/beans/spring-beans-4.3.xsd        http://dubbo.apache.org/schema/dubbo        http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
 
    <!-- 提供方应用信息,用于计算依赖关系 -->
    <dubbo:application name="order-service-consumer"  />
 
    <!-- 使用zookeeper广播注册中心暴露服务地址 -->
    <dubbo:registry address="zookeeper://192.168.0.126:2181" />
 
    <!-- 引用配置: 创建一个远程服务代理,一个引用可以指向多个注册中心 -->
    <dubbo:reference id="userService" timeout="3000" interface="com.xiaohui.service.UserService">
        <dubbo:method name="queryAllUserAddress" timeout="2000"></dubbo:method>
    </dubbo:reference>
 
    <!-- orderService -->
    <bean class="com.xiaohui.service.impl.OrderServiceImpl">
        <property name="userService" ref="userService"></property>
    </bean>
 
    <!-- 超时全局配置 -->
    <dubbo:consumer timeout="4000"></dubbo:consumer>
</beans>

三、基于注解方式的超时配置

服务提供者注解方式配置

服务消费者注解方式配置

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值