Spring_boot_dubbo

Spring_boot_dubbo

spring-boot整合dubbo:Spring-boot-dubbo-starter

SpringBootcloud 发表了文章 • 0 个评论 • 555 次浏览 • 2017-11-27 10:23 • 来自相关话题

对于服务的消费者或提供者,使用dubbo内置的注解@Service或@Reference来声明
在application.properties/yml 中配置dubbo的相关参数,例如下面就是一个简单的消费者的配置
dubbo: application: name: lizo-consumer registry: address: zookeeper://localhost:12181
在配置类上使用@EnableDubbo(basePackages = "xxx.xxx.xxx") 来开启dubbo的自动配置

经过以上3个步骤,就可以完成对dubbo的配置,是不是很Spring-bootstyle

dubbo-filter

dubbo有很多扩展,其中filter是使用比较多一个。但是用起来很不方便。如果能像Spring boot定义Spring MVC的filter那样简单声明一个bean就好了。恩,其实就是这样。
@Bean ProviderFilter providerFilter() { return new ProviderFilter(); } static class ProviderFilter extends AbstractDubboProviderFilterSupport { public Result invoke(Invoker<?> invoker, Invocation invocation) { System.out.println("ProviderFilter"); return invoker.invoke(invocation); } }


更定制化的需求,可以使用Dubbo的@Activate注解来定制化Filter,那么可以这样
@Bean CustomFilter customFilter() { return new CustomFilter(); } @Activate(group = Constants.PROVIDER) static class CustomFilter extends AbstractDubboFilterSupport { public Result invoke(Invoker<?> invoker, Invocation invocation) throws RpcException { System.out.println("ProviderFilter2"); return invoker.invoke(invocation); } public Filter getDefaultExtension() { return this; } }


源码及其demo地址:

码云:https://git.oschina.net/null_5 ... arent
github:https://github.com/Athlizo/spring-dubbo-parent
  查看全部
对于服务的消费者或提供者,使用dubbo内置的注解@Service或@Reference来声明
在application.properties/yml 中配置dubbo的相关参数,例如下面就是一个简单的消费者的配置
dubbo: application: name: lizo-consumer registry: address: zookeeper://localhost:12181
在配置类上使用@EnableDubbo(basePackages = "xxx.xxx.xxx") 来开启dubbo的自动配置

经过以上3个步骤,就可以完成对dubbo的配置,是不是很Spring-bootstyle

dubbo-filter

dubbo有很多扩展,其中filter是使用比较多一个。但是用起来很不方便。如果能像Spring boot定义Spring MVC的filter那样简单声明一个bean就好了。恩,其实就是这样。
@Bean ProviderFilter providerFilter() { return new ProviderFilter(); } static class ProviderFilter extends AbstractDubboProviderFilterSupport { public Result invoke(Invoker<?> invoker, Invocation invocation) { System.out.println("ProviderFilter"); return invoker.invoke(invocation); } }


更定制化的需求,可以使用Dubbo的@Activate注解来定制化Filter,那么可以这样
@Bean CustomFilter customFilter() { return new CustomFilter(); } @Activate(group = Constants.PROVIDER) static class CustomFilter extends AbstractDubboFilterSupport { public Result invoke(Invoker<?> invoker, Invocation invocation) throws RpcException { System.out.println("ProviderFilter2"); return invoker.invoke(invocation); } public Filter getDefaultExtension() { return this; } }


源码及其demo地址:

码云:https://git.oschina.net/null_5 ... arent
github:https://github.com/Athlizo/spring-dubbo-parent
 

spring-boot整合dubbo:Spring-boot-dubbo-starter

SpringBootcloud 发表了文章 • 0 个评论 • 555 次浏览 • 2017-11-27 10:23 • 来自相关话题

对于服务的消费者或提供者,使用dubbo内置的注解@Service或@Reference来声明
在application.properties/yml 中配置dubbo的相关参数,例如下面就是一个简单的消费者的配置
dubbo: application: name: lizo-consumer registry: address: zookeeper://localhost:12181
在配置类上使用@EnableDubbo(basePackages = "xxx.xxx.xxx") 来开启dubbo的自动配置

经过以上3个步骤,就可以完成对dubbo的配置,是不是很Spring-bootstyle

dubbo-filter

dubbo有很多扩展,其中filter是使用比较多一个。但是用起来很不方便。如果能像Spring boot定义Spring MVC的filter那样简单声明一个bean就好了。恩,其实就是这样。
@Bean ProviderFilter providerFilter() { return new ProviderFilter(); } static class ProviderFilter extends AbstractDubboProviderFilterSupport { public Result invoke(Invoker<?> invoker, Invocation invocation) { System.out.println("ProviderFilter"); return invoker.invoke(invocation); } }


更定制化的需求,可以使用Dubbo的@Activate注解来定制化Filter,那么可以这样
@Bean CustomFilter customFilter() { return new CustomFilter(); } @Activate(group = Constants.PROVIDER) static class CustomFilter extends AbstractDubboFilterSupport { public Result invoke(Invoker<?> invoker, Invocation invocation) throws RpcException { System.out.println("ProviderFilter2"); return invoker.invoke(invocation); } public Filter getDefaultExtension() { return this; } }


源码及其demo地址:

码云:https://git.oschina.net/null_5 ... arent
github:https://github.com/Athlizo/spring-dubbo-parent
  查看全部
对于服务的消费者或提供者,使用dubbo内置的注解@Service或@Reference来声明
在application.properties/yml 中配置dubbo的相关参数,例如下面就是一个简单的消费者的配置
dubbo: application: name: lizo-consumer registry: address: zookeeper://localhost:12181
在配置类上使用@EnableDubbo(basePackages = "xxx.xxx.xxx") 来开启dubbo的自动配置

经过以上3个步骤,就可以完成对dubbo的配置,是不是很Spring-bootstyle

dubbo-filter

dubbo有很多扩展,其中filter是使用比较多一个。但是用起来很不方便。如果能像Spring boot定义Spring MVC的filter那样简单声明一个bean就好了。恩,其实就是这样。
@Bean ProviderFilter providerFilter() { return new ProviderFilter(); } static class ProviderFilter extends AbstractDubboProviderFilterSupport { public Result invoke(Invoker<?> invoker, Invocation invocation) { System.out.println("ProviderFilter"); return invoker.invoke(invocation); } }


更定制化的需求,可以使用Dubbo的@Activate注解来定制化Filter,那么可以这样
@Bean CustomFilter customFilter() { return new CustomFilter(); } @Activate(group = Constants.PROVIDER) static class CustomFilter extends AbstractDubboFilterSupport { public Result invoke(Invoker<?> invoker, Invocation invocation) throws RpcException { System.out.println("ProviderFilter2"); return invoker.invoke(invocation); } public Filter getDefaultExtension() { return this; } }


源码及其demo地址:

码云:https://git.oschina.net/null_5 ... arent
github:https://github.com/Athlizo/spring-dubbo-parent