美文网首页
4.dubbo标签详解

4.dubbo标签详解

作者: 指尖架构141319 | 来源:发表于2019-12-16 11:55 被阅读0次

    1.常规标签

    1.1 关闭某个服务的启动时检查:(没有提供者时报错)
    <dubbo:reference check="false" />
    
    1.2 关闭所有服务的启动时检查:(没有提供者时报错) 写在定义服务消费者一方
    <dubbo:consumer check="false" />
    
    • check=true,检测到某接口没有提供者时,抛异常,阻止系统启动, reference对象置null,即使后续补进了provider,也不能补救
    • check=false,不检测接口是否有提供者,只要后续补入provider,程序会自动探测到线上正式环境使用
    1.3 关闭注册中心启动时检查:(注册订阅失败时报错)
    <dubbo:registry check="false" />
    
    1.4 引用缺省是延迟初始化的,改为饥饿加载
    <dubbo:reference init="true" /> 
    
    1.5 禁用注册
    <dubbo:registry register="false" />
    

    2.容错策略(cluster)

    在消费端配置:

    <dubbo:consumer check="false" cluster="failfast" timeout="3000" 
    retries="2" loadbalance="random"/>
    

    cluster类型:

    • Failover(默认) :当出现失败,重试其它服务器。 retries=“2” 来设置重试次数(不含第一次),场景:读操作
    • FailFast:一次失败立即返回,场景:写操作
    • Failsafe:出现异常,直接忽略,场景:日志等不太紧要的信息

    3. 负载策略(loadbalance)

    在消费端配置:

    <dubbo:consumer check="false" cluster="failfast" timeout="3000" 
    retries="2" loadbalance="random"/>
    

    loadbalance类型:

    • random:随机访问
    • roundRobin:权重轮询
    • leastActive:最小活跃数(慢的机器收到的请求少)

    4. 缓存

        <dubbo:reference id="orderService" interface="com.ucar.service.OrderService" >
            <dubbo:method name="getDetail" cache="lru" />
        </dubbo:reference>
    

    将方法的参数、返回value缓存,上例吧getDetail方法缓存

    • lru:最少使用原则,如果长期未使用,就不缓存了
    • threadlocal:对调用者缓存,如果下次还是同一个调用者,就返回缓存数据

    相关文章

      网友评论

          本文标题:4.dubbo标签详解

          本文链接:https://www.haomeiwen.com/subject/hqbrnctx.html