详细的Dubbo配置也可以参考:https://blog.csdn.net/abcde474524573/article/details/53026110

(1)<dubbo:service/>  用于服务提供方暴露服务位置

例子:

        1.interface:  服务实现的接口名称

2.ref :  指向真正的服务实现类,已经在spring中定义了

3.version:  服务的版本

4.delay: 表示延迟注册时间,也就是什么时候暴露服务,-1表示spring容器初始化完成时暴露服务(所以通常为-1)

5.timeout:  远程服务调用超时时间(毫秒),默认为1000

6.connections: 对每个提供者的最大连接数,rmi\http\hessian等短连接协议表示限制连接数,dubbo等长连接协议表示建立的长连接个数

7.loadbalance : 负载均衡策略,也就是说同一个服务有多个提供者时,客户端如何选择提供者

  1)random:  随机分配,并且可以给提供者设置权重

2)roundrobin: 轮询,也就是一个个轮流来调用.但是存在慢的提供者累积请求问题,比如:第二台机器很慢,但是没挂,当请求调到第二台时就卡在那,久而久之,所有请求都卡在调到第二台上

  3)leastactive:  最少活跃调用,也就是越慢的提供者获得更少请求

   4)consistenthash: 一致性hash,也就是如果参数相同就会发送到同一台机器上, 如果某一台挂掉了,原本发往该提供者的请求会平摊到其他提供者,不会引起剧烈变动

缺省只对第一个参数hash,如果要修改,可以配置

     8.retries: 服务调用重试次数,不包括第一次,所以不需要重试设置为0,默认为2

9.cluster  集群方式

   1)failover: 调用失败会重试其他服务器,所以通常用于读操作,但重试会带来更长延迟

   2)failfast: 快速失败,只发起一次调用,如果失败就立即报错,通常用在新增\更新操作

   3)failback: 失败自动恢复,后台记录失败请求,定时重发,通常用于消息通知操作

   4)failsafe:  也就是出现异常也没事,比如写入审计日志等操作

   5)broadcast:  广播所有服务提供者,挨个调用,只要有一台报错就报错,通常用来通知所有提供者更新缓存或日志等本地资源信息

   6)forking: 并行调用多个服务器,只要一个成功就返回,通常用于实时性要求较高的读操作,但会浪费更多服务资源

10.executes: 服务提供者每个方法最大可并行执行请求数

(2)<dubbo:reference/> 用于消费者引用服务的配置

例子:

      1.id: 服务饮用beanId

2.interface : 服务接口名

3.version:  服务版本,需要与服务提供者的版本一致

4.protocol:  只调用指定协议的服务提供方

5.url : 点对点直连服务提供者地址,将绕过注册中心

(3)<dubbo:protocol/>  服务提供者的协议配置.

如果需要支持多种协议,可以声明多个<dubbo:rpotocol>标签,并在<dubbo:service>中protocol属性指定使用的协议

1.id : 协议的beanId,可以在<dubbo:service protocol="">中引用此ID,如果ID不填,缺省和name属性值一样,重复则在name后加序号

2.name:   协议名称

3.port: 服务端口,dubbo协议默认为20800,http、hessian默认为80,rmi默认为1099. 如果配置为-1或没配,则会自动分配一个没被占用的端口

4.server:   协议的服务器实现类型,dubbo协议有mina、netty,默认为netty,http有jetty、servlet,默认为servlet

5.accesslog:  设置为true则会向logger中输出访问日志;也可以填写日志文件路径,直接把访问日志输出到指定文件

6.threadpool : 线程池类型,可选fixed/cached

7.threads:  服务线程池大小

8.dispatcher:   协议的消息派发方式,用于指定线程模型,如dubbo协议的all,direct等

(4)<dubbo:registry/>  注册中心配置,服务的提供者、消费者都有此配置

如果有多个不同的注册中心,可以声明多个<dubbo:registry>标签,并在<dubbo:service>或<dubbo:reference>的registry属性指定使用的注册中心。

1.address

注册中心服务器地址,如果地址没有端口缺省为9090,同一集群内的多个地址用逗号分隔,如ip:port,ip:port,不同集群的注册中心则配置多个<dubbo:registry>

(5)<dubbo:provider/>  服务提供者缺省值配置。

为<dubbo:service>和<dubbo:protocol>标签的缺省值设置

也就是说provider中有些设置是各个service公用的,又与默认值不一样,就可以使用这个标签

那么标签中属性也就和<dubbo:service>和<dubbo:protocol>完全一样

如:

也就是说所有service默认的timeout=180000

dubbo配置文件解读(1)的更多相关文章

  1. dubbo配置文件解读(2)

    <dubbo:service/> <dubbo:reference/> <dubbo:protocol/> <dubbo:registry/> < ...

  2. 【比赛打分展示双屏管理系统-专业版】Other.ini 配置文件解读以及排行榜界面及专家评语提交展示等具体配置

    第一个问题:Other.ini配置文件的解读: 在软件根目录下,找到Other.ini配置文件,打开如下: 配置文件解读: iOrderIDOrXSID:默认为0,按照软件 选项/排行榜和奖项 的设置 ...

  3. dubbo配置文件的加载顺序详解(图示)

    Dubbo配置文件的加载顺序 ​ 在使用apache dubbo.version2.7.3 时,配置文件的加载情况.以provider提供服务者为例. 配置文件 ,以下四个配置文件. 其优先级 app ...

  4. Nginx 小入门记录 之 Nginx 配置文件解读(二)

    上一小节主要是记录一些环境准备和Nginx的安装,接下来对Nginx基本配置进行记录. 查看配置文件安装记录 可以通过以下Linux命令进行查看: rpm -ql nginx rpm 是liunx的包 ...

  5. 从零开始Pytorch-YOLOv3【笔记】(一)配置文件解读

    前言 这是github上的一个项目YOLO_v3_tutorial_from_scratch,它还有相应的blog对其详细的解读.机器之心翻译了他的tutorial:从零开始PyTorch项目:YOL ...

  6. dubbo配置文件xml校验报错

    配置dubbo服务xml后,程序能正常执行,但validate会出现一些异常: Multiple annotations found at this line: - cvc-complex-type. ...

  7. dubbo配置文件报错解决思路

    导入dubbo项目到Eclipse,配置文件报了如下异常: Multiple annotations found at this line: - cvc-complex-type.2.4.c: The ...

  8. net core体系-web应用程序-4net core2.0大白话带你入门-3asp.net core项目架构和配置文件解读

    asp.net core web项目目录解读   Connected Services 和传统.net web项目相比,它的功能类似于添加webservice或者wcf service的引用.暂时用不 ...

  9. redis 的使用 及 配置文件解读

    redis-server命令 redis-server /usr/local/redis/conf/redis.conf #加配置文件绝对路径启动redis服务 redis-server /usr/l ...

随机推荐

  1. dotnet 使用 MessagePack 序列化对象

    和很多序列化库一样,可以通过 MessagePack 序列化和反序列化,和 json 相比这个库提供了二进制的序列化,序列化之后的内容长度比 json 小很多 这个库能序列的内容不多,大多数时候建议使 ...

  2. java.lang.NoSuchMethodException: com.hgkj.controler.action.UserAction.newsLoginAction()

    java.lang.NoSuchMethodException: com.hgkj.controler.action.UserAction.newsLoginAction() 不久前在学习struts ...

  3. 【2016常州一中夏令营Day3】

    小 W 摆石子[问题描述]小 W 得到了一堆石子,要放在 N 条水平线与 M 条竖直线构成的网格的交点上.因为小 M 最喜欢矩形了,小 W 希望知道用 K 个石子最多能找到多少四边平行于坐标轴的长方形 ...

  4. Cmder安装与使用

    越来越多人使用Cmder代替Windows的cmd(毕竟其界面太Lower了),但是每次用Cmder都要回到安装目录查找之后才能使用,真的很麻烦,有木有可以像Git一样右键就是可以用的方法呢?答案当然 ...

  5. LeetCode150_Evaluate Reverse Polish Notation评估逆波兰表达式(栈相关问题)

    题目: Evaluate the value of an arithmetic expression in Reverse Polish Notation. Valid operators are+, ...

  6. js/jq判断鼠标滚轮方向

    js判断鼠标滚轮方向: var scrollFunc = function (e) { e = e || window.event; if (e.wheelDelta) { //判断浏览器IE,谷歌滑 ...

  7. Jquery为动态添加的元素添加事件

    $("tbody").on("click","button", function() { var text = $(this).parent ...

  8. 洛谷$P4211\ [LNOI2014]\ LCA$ 树链剖分+线段树

    正解:树剖+线段树 解题报告: 传送门$QwQ$ 看到$dep[lca]$啥的就想到之前托腮腮$CSP$模拟$D1T3$的那个套路,,, 然后试下这个想法,于是$dep[lca(x,y)]=\sum_ ...

  9. Redis 中的数据持久化策略(RDB)

    Redis 是一个内存数据库,所有的数据都直接保存在内存中,那么,一旦 Redis 进程异常退出,或服务器本身异常宕机,我们存储在 Redis 中的数据就凭空消失,再也找不到了. Redis 作为一个 ...

  10. Python 中 unittest 单元测试框架中需要知识点

    现在正在使用 unittest 框架,我们来记录下这个框架的知识点: unittest 框架:我们在写接口用例的时候,会继承 unittest 当中的 TestCase 的类和方法,私有方法除外,来识 ...