Dubbo(3)

配置的优先级

消费端优先最高,其次是服务端

这里写图片描述

服务改造

这里写图片描述

服务的最佳实践

分包
1、  服务接口、请求服务模型、异常信息都放在api里面,符合重用发布等价原则,共同重用原则
2、  api里面放入spring 的引用配置。 也可以放在模块的包目录下。 com.gupao.vip.mic.order/***-reference.xml
粒度
1、  尽可能把接口设置成粗粒度,每个服务方法代表一个独立的功能,而不是某个功能的步骤。否则就会涉及到分布式事务。
2、  服务接口建议以业务场景为单位划分。并对相近业务做抽象,防止接口暴增。
3、  不建议使用过于抽象的通用接口  T  T<泛型>, 接口没有明确的语义,带来后期的维护。
版本
1、  每个接口都应该定义版本,为后续的兼容性提供前瞻性的考虑 version
2、  建议使用两位版本号,因为第三位版本号表示的兼容性升级,只有不兼容时才需要变更服务版本
3、  当接口做到不兼容升级的时候,先升级一半或者一台提供者为新版本,再将消费全部升级新版本,然后再将剩下的一半提供者升级新版本

推荐用法

在provider端尽可能配置consumer端的属性
    比如timeout、retires、线程池大小、LoadBalance

配置管理员信息
    application上面配置的owner 、 owner建议配置2个人以上。
    因为owner都能够在监控中心看到

配置dubbo缓存文件
    1、注册中心的列表
    2、服务提供者列表

源码分析

这里写图片描述

基于spring 配置文件的扩展的话
NamespaceHandler:   注册BeanDefinitionParser, 利用它来解析

BeanDefinitionParser:   解析配置文件的元素

spring会默认加载jar包下/META-INF/spring.handlers  找到对应的NamespaceHandler

initializingBean, 当spring容器初始化完以后,会调用afterPropertiesSet方法
DisposableBean,
ApplicationContextAware, 
ApplicationListener, 
BeanNameAware 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值