[发明专利]一种基于Java和Spring容器实现RPC的方法在审
申请号: | 202210351680.6 | 申请日: | 2022-04-02 |
公开(公告)号: | CN114880135A | 公开(公告)日: | 2022-08-09 |
发明(设计)人: | 陆富迭;孙良良 | 申请(专利权)人: | 南京行者易智能交通科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/448 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 210014 江苏省南京市秦淮区永*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 java spring 容器 实现 rpc 方法 | ||
1.一种基于Java和Spring容器实现RPC的方法,其特征在于,该方法包括如下步骤:
步骤1,首先为每个应用取一个唯一标识的英文名称,然后新增一个Nacos配置项,保存应用对外开放的Http端口信息,最后再新增一个Nacos配置项,保存各个应用部署的实际IP地址信息;
步骤2,开发二方库,新增Java注解RpcService,为各个RPC服务端应用新增JavaInterface接口类,新增一个RPC请求类C表示一次RPC调用,新增一个包含http请求、Java序列化和反序列化、Json转换的工具类U,新增一个Http REST接口,新增一个实现Spring框架FactoryBean、InitializingBean和Java InvocationHandler接口的代理类P,新增一个实现Spring框架BeanDefinitionRegistryPostProcessor、ApplicationContentAware、RecourdLoaderAware接口的组件类S;
步骤3,将步骤2完成的二方库导入到RPC应用中,其中服务端应用实现在二方库里定义RPC服务端应用Java Interface接口类,并加上Spring的Service注解,应用启动后会对其进行实例化并放入Spring容器中;而客户端应用在需要进行RPC调用的类中声明需要注入RPC服务端应用Java Interface接口,然后调用RPC服务端应用Java Interface接口类中的方法。
2.根据权利要求1所述的一种基于Java和Spring容器实现RPC的方法,其特征在于,步骤2所述Java注解RpcService包含一个name属性,用于后续标识唯一的RPC服务端应用。
3.根据权利要求1所述的一种基于Java和Spring容器实现RPC的方法,其特征在于,步骤2所述RPC服务端应用Java Interface接口类,用于定义抽象方法method,即该RPC服务端应用所能提供的RPC功能,在Java Interface接口类上添加Java注解RpcService,其中该Java注解RpcService的name属性值为该RPC服务端应用唯一标识的英文名称。
4.根据权利要求1-3任一项所述的一种基于Java和Spring容器实现RPC的方法,其特征在于,步骤2所述RPC请求类C包含标识RPC服务端应用的serviceName属性,标识RPC服务端应用Java Interface接口类的全路径名className属性,标识RPC服务端应用JavaInterface接口类的抽象方法method的methodName属性,标识RPC服务端应用JavaInterface接口类抽象方法method参数类型的数组paramTypes属性,标识RPC服务端应用Java Interface接口类抽象方法method实际请求参数的数组params,标识RPC服务端应用Java Interface接口类的抽象方法method返回类型的returnType熟悉,标识本次RPC调用结果的result属性,标识本次RPC调用异常的exception属性。
5.根据权利要求4所述的一种基于Java和Spring容器实现RPC的方法,其特征在于,步骤2所述工具类U包含http请求、Java序列化和反序列化、Json转换功能,封装通用方法。
6.根据权利要求5所述的一种基于Java和Spring容器实现RPC的方法,其特征在于,步骤2所述代理类P,即为存在Java注解RpcService的代理实现类,根据DataId属性值为service_config的Nacos配置和Java注解RpcService的name属性获取到对应PRC服务端的IP和端口配置,拦截所有RPC服务端应用Java Interface接口类的方法调用,将实际调用参数存储到一个RPC请求类C对象中,最后调用工具类U中的http方法将请求发送到RPC服务器端的Http REST接口。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京行者易智能交通科技有限公司,未经南京行者易智能交通科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210351680.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种漂浮式海上测风平台
- 下一篇:一种基于AI人工智能的数量统计机器人