资讯专栏INFORMATION COLUMN

一个Dubbo泛化调用的Util

Enlightenment / 3400人阅读

摘要:源码地址作用可以更加灵活的调用其他接口实现思路反射泛化调用局限性局限性传入的参数列表顺序必须和方法上的参数顺序相同问题不大拿不到具体类型的泛型反序列化还是会失败这种情况很少需要自己多写一个必须项目引入了对应的问题不大源码有大量变动或结构性

源码地址
https://github.com/wheel-orga...
作用

可以更加灵活的调用其他dubbo接口

实现思路

反射+泛化调用

局限性

局限性:

传入的参数列表顺序必须和方法上的参数顺序相同(问题不大)

拿不到具体类型的泛型反序列化还是会失败(这种情况很少)

需要自己多写一个helper

必须项目引入了对应的api(问题不大)

dubbo源码有大量变动或结构性改变时,此util也要维护(Apache的dubbo可以兼容alibaba的dubbo,所以我用了alibaba的dubbo)

如何使用

注意:引入的时候一定要去掉api里的dubbo

入口及入参说明:

唯一入口为:

DubboGenericInvoker#invoke

url为dubbo-admin的url

methodName为调用方法名

params为参数列表List(顺序必须和方法定义的参数顺序相同,dto请序列化)

实际使用:

配合swagger


代码单测调用

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/77676.html

相关文章

  • Dubbo压测插件实现——基于Gatling

    摘要:为了控制压测时的,则需要实现逻辑。则是获取属性并初始化客户端客户端配置则提供了设置泛化调用入参的以及接下来要介绍的部分的全链路压测中,我们都使用校验请求结果,压测插件中,我们也实现了基于的校验。 Dubbo 压测插件已开源,本文涉及代码详见gatling-dubbo Gatling 是一个开源的基于 Scala、Akka、Netty 实现的高性能压测框架,较之其他基于线程实现的压测框架...

    BigTomato 评论0 收藏0
  • Dubbo压测插件实现——基于Gatling

    摘要:为了控制压测时的,则需要实现逻辑。则是获取属性并初始化客户端客户端配置则提供了设置泛化调用入参的以及接下来要介绍的部分的全链路压测中,我们都使用校验请求结果,压测插件中,我们也实现了基于的校验。 Dubbo 压测插件已开源,本文涉及代码详见gatling-dubbo Gatling 是一个开源的基于 Scala、Akka、Netty 实现的高性能压测框架,较之其他基于线程实现的压测框架...

    CoreDump 评论0 收藏0
  • dubbo源码解析(二十六)远程调用——http协议

    摘要:前言基于表单的远程调用协议,采用的实现,关于协议就不用多说了吧。后记该部分相关的源码解析地址该文章讲解了远程调用中关于协议的部分,内容比较简单,可以参考着官方文档了解一下。 远程调用——http协议 目标:介绍远程调用中跟http协议相关的设计和实现,介绍dubbo-rpc-http的源码。 前言 基于HTTP表单的远程调用协议,采用 Spring 的HttpInvoker实现,关于h...

    xiyang 评论0 收藏0
  • Nodejs“实现”Dubbo Provider

    摘要:背景目前应用越来越广泛,但和的体系接入困难,所以我们需要实现端的逻辑。使用实现一个可用的完全没有问题,最简单的实现则是在对应集群注册接口与机器的映射关系,便可以访问对应接口。在评估了各种实现方案后,决定放弃开发端,使用的模式。 背景 目前nodejs应用越来越广泛,但和java的dubbo体系接入困难,所以我们需要实现node端的dubbo provider逻辑。java的dubbo ...

    Charles 评论0 收藏0
  • Nodejs“实现”Dubbo Provider

    摘要:背景目前应用越来越广泛,但和的体系接入困难,所以我们需要实现端的逻辑。使用实现一个可用的完全没有问题,最简单的实现则是在对应集群注册接口与机器的映射关系,便可以访问对应接口。在评估了各种实现方案后,决定放弃开发端,使用的模式。 背景 目前nodejs应用越来越广泛,但和java的dubbo体系接入困难,所以我们需要实现node端的dubbo provider逻辑。java的dubbo ...

    zhouzhou 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<