随笔分类 - motan
摘要:1、服务调用方式 调用motan服务,可以在setter方法或field标注 @MotanReferer 注解引入要调用的服务接口,如下作用于field: @MotanReferer(basicReferer = "ad-commonBasicRefererConfigBean", applicat
阅读全文
摘要:这里我们只介绍motan的注解方式。 1、server端配置 (1)声明Annotation用来指定需要解析的包名 @Bean public AnnotationBean motanAnnotationBean() { AnnotationBean motanAnnotationBean = new
阅读全文
摘要:1、回顾motan注册BeanDefinition motan的整个注册、启动就是通过介入spring容器的启动来实现的,所以我们在这一节继续根据spring的启动顺序来看一下motan的服务注册。 在motan系列1——与spring集成中,我们介绍了motan是通过 AnnotationBean
阅读全文
摘要:motan的SPI机制 motan整个项目由SPI机制贯穿起来。主要理解几个概念: 两个注解:@Spi主要于可扩展的接口,类似于模板模式,定义一个标准,可以自定义扩展;@SpiMeta作用于扩展类,可以定义名称,实例化方式(单例和原型) 另外有一个核心实现类 ExtensionLoader<T>,这
阅读全文
摘要:Motan是新浪微博研发并开源的一个RPC框架,与Dubbo相比,他更轻量级一些,代码也更少一些,但也五脏俱全。 Motan在GitHub上的项目地址:https://github.com/weibocom/motan 关于Motan的使用,可以看官方Wiki:https://github.com/
阅读全文
摘要:背景: 线上ne-account服务由于调用量及qps都较高,在上线期间,motan日志打出如下错误: 2018-09-14 12:18:19 [ERROR] ThreadProtectedRequestRouter reject request: request_method=XXXXXX req
阅读全文
摘要:问题:在分布式服务中,业务模块间的通信场景很多,我们各模块间的通信使用的是motan,在老的框架中,每当某个服务模块上下线或出现故障时,总会导致调用该模块的其他服务报503,出现阻塞或报错现象。 分析:这其实就是上下线的模块在关闭服务时没有及时通知到注册中心下线节点导致服务下线仍有大量请求打过来,也
阅读全文