Dubbo系列之实践配置总结(九)

今天作为dubbo系列的最后一篇,内容很简单,就是dubbo默认的配置有很多,今天总结实际中dubbo可能会用到的配置以及作为一个开发人员能够做哪些扩展?

& dubbo相关配置

>check="false":关闭服务依赖检查机制

>retries="2:设置重试次数

>forks="2":设置最大并行数

>"version="1.0.0":服务多版本升级

>"cache="lru":指定缓存,提高访问性能

>sent:

>>sent="true" 等待消息发出,消息发送失败将抛出异常

>>sent="false" 不等待消息发出,将消息放入IO队列,即刻返回

>async

>>return="false",async="true":忽略返回值

>>return="true",async="true":不忽略返回值

服务事件通知

>>oninvoker;服务调用之前

>>onreturn:服务调用之后

>>onthrow:服务调用异常

>delay="5000":服务需要延迟暴露,等待其他资源

spring初始化死锁

原因:singletonObjects和beanDefinitionMap

解决:deplay=”-1(Dubbo在Spring容器初始化完后,再暴露服务)”和 禁止applicationContext.getBean()

>executes="10:并发请求数量

>mock=force:return+null:方法调用直接返回Null

>mock=fail:return+null:方法调用失败后返回Null

>key="shutdown.timeout"value="60000":超时优雅停机

> threads="100":线程池

>timeout="1000":服务调用超时


& 开发人员扩展

>Filter:直接实现接口,可以完成特定业务过滤规则

>Router:实现抽闲的父类,可以根据自己特定的过滤规则进行路由

>Cluster:实现一个接口加一个对应的invoker,可以实现自己的容错机制

>LoadBalance:实现一个接口,完成自己的负载均衡方式

记住  上面所有的实现,最终需要在对应加载文件里面进行配置,否则无效

猜你喜欢

转载自blog.csdn.net/qq_18603599/article/details/80860857