首先来介绍下Adaptive注解:
@Adaptive:为生成Adaptive实例提供参数,作用域在类或方法上;
Adatpive,字面意思是个适配,但其实是个代理,它的意思是适配合适的对象处理请求。类似jdk的动态代理,因为dubbo底层会大量使用反射,出于性能考虑会默认使用javassist字节码编译生成一个adaptive拦截所有请求,然后由它基于策略动态委派合适的provider进行处理。
SPI接口会动态编译出一个adaptive,用于适配provider处理请求。用户可以自己实现一个adaptive,只需要对某个provider打上@adaptive即可,例如Dubbo自身的AdaptiveExtensionFactory类。
对于默认编译生成Adaptive的方案,需要使用@Adaptive声明接口上的哪些方法是adaptive方法,没有被声明的方法如果被请求会抛出异常非adaptive方法的异常
下面是基本的用法。
Adaptive注解(自适应扩展点的注解):
第一种:根据默认的spi来获取接口
第二种:Adaptive注解
String[] {"key1", "key2"}
根据key1或者key2来获取接口
第三种 Adaptive注解
如果不设置则缺省使用Extension接口类名的点分隔小写字串
Ext3的缺省值为ext3
相关推荐
Dubbo源码(注释版)
springboot整合dubbo +zookeeper 纯注解小Demo,需要的小伙伴可以试试
SpringBoot + zookeeper + dubbo 用注解模式实现的demo
整合 Dubbo + SpringMvc 4.3.1 的服务器maven工程样例,使用注解方式定义服务及IOC装配,采用Hessian协议传输 三个工程,在 cnetAdmin 和 cnetBlu 中,要引用 cnetCommon 工程。
用maven构建项目使用spring和multicast广播注册中心方式实现Dubbo入门之hello world(用maven构建项目使用spring和multicast广播注册中心方式实现Dubbo入门之hello world(简单测试版)文档说明以及源码
NULL 博文链接:https://goodluck-wgw.iteye.com/blog/2054625
基于springMVC框架的dubbo注解配置。需自己安装zookeeper,否则修改注册地址为multicast方式。两个web项目启动后,访问http://localhost:8080/dubboconsumer/DubboController/testDubboAnnotation.do 进行测试
dubbo+zookeeper+spring 注解式开发demo,使用注解方式利用dubbo开发的分布式例子
springboot以注解的形式集成dubbo,生产者、消费者、接口层分开
dubbo使用例子,首先api的生产jar包,然后在serviceone和ControllerOne引用,使用就可以。
Dubbo之《尚硅谷》学习笔记
Dubbo 后台管理平台及监控平台使用简介 一、管理平台dubbo-admin部署使用 管理平台是个web项目,将 dubbo-admin-2.6.0.war直接部署到tomcat 下使用。注意软件版本 tomcat 8+jvm8+ dubbo-admin-2.6.0.war。 A、第一...
dubbo资源 dubbo-admin dubbo demo
dubbo示例代码dubbo-sample
Dubbo 是阿里开源的一个高性能服务治理框架,本文档介绍了dubbo框架和使用方法
解决dubbo接口自定义异常的捕捉问题,dubbo消费者可以捕捉到提供者所抛出的自定义异常。
dubbo对外提供接口,和使用外来的接口,以及如何提供协议,和使用哪个协议
nodejs 使用原生的 dubbo (dubbo head hessian body) 协议打通了 dubbo 的 rpc 方法调用 .
dubbo是目前分布式系统开发里面使用非常多的一个RPC框架。本套视频从分布式系统的基本概念出发,由浅入深,讲解了RPC原理,Dubbo基本使用,Dubbo高可用场景以及Dubbo原理,涉及了分布式系统中服务注册、服务发现、...