如何不引入依赖jar包,实现应用间的RPC调用?

    场景:API网关场景下,涉及网关系统到多个下游系统的调用,如果按传统方式引入下游系统依赖jar的形式,成本很高,无法实现动态扩展。

    解决方案:RPC泛化调用。

    基本原理:

    RPC框架一般都会实现泛化调用的方式。“泛化”的意思,简单讲是“通用化”,无需依赖服务提供者的jar,只需要知道方法名,参数等,即可实现调用。 原来POJO的形式的参数调用变为Map结构,返回结果也是Map结构。

    服务提供者仍然会注册服务到注册中心,调用者不需依赖服务提供者的依赖jar,而是依赖一个通用的RPC框架的jar包,由该jar包提供服务发现的能力,并转发调用。

    参考原理 https://cloud.tencent.com/developer/article/1440665