[发明专利]一种基于zookeeper和netty的分布式远程调用方法有效

专利信息
申请号: 201810093687.6 申请日: 2018-01-31
公开(公告)号: CN108234670B 公开(公告)日: 2021-01-15
发明(设计)人: 付君辉;李宏伟;代宏伟 申请(专利权)人: 北京中安智达科技有限公司
主分类号: H04L29/08 分类号: H04L29/08;H04L29/06
代理公司: 北京高文律师事务所 11359 代理人: 徐江华;费峥红
地址: 100085 北京市*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 zookeeper netty 分布式 远程 调用 方法
【权利要求书】:

1.一种基于zookeeper和netty的分布式远程调用方法,其特征在于:包括用于提供远程服务并供客户端调用的服务端模块,以及对本地调用进行封装的客户端模块,所述服务端模块包括服务封装,对服务进行封装,提供唯一的访问点,并且进行服务发布和服务注册;

所述客户端模块包括动态代理,通过调用代理类获取服务端的业务实现;包括服务查找,通过请求调用的接口及方法从Zookeeper中获取注册服务的IP和端口,选择权重值最小的服务,同时将该权重设置成相同服务集群中的最大值;还包括服务调用,通过Netty发起客户端请求,绑定处理类流水线,封装请求对象并序列化后发给服务端模块,服务端模块响应数据反序列化后传给业务逻辑;

服务发布是通过Netty发布服务,启动Netty服务,开启select轮询机制,监听接收、读、写事件,并处理流水线业务;包括(1)接收请求数据进行反序列化得到请求对象;(2)根据请求中的参数,从服务封装程序中找到对应的业务实现类,采用反射技术调用指定方法,获取返回结果;(3)将业务调用结果封装到响应对象中并序列化后发往客户端;

集群信息包括每个服务的ip、端口及权重;

所述客户端模块向服务端模块的请求过程包括以下步骤,

C1.请求类发起请求,调用客户端代理类获取服务,并调用服务提供的方法;

C2.客户端封装请求对象,通过动态代理机制,获取到调用的服务、方法及参数信息,并将其封装成请求对象;

C3.获取服务地址,通过C2中获取的服务信息,从Zookeeper集群中获取注册服务的IP、端口及权重值,如果服务端是一个集群,Zookeeper返回的注册服务地址应该也有多个,所以返回一个服务地址集合;

C4.客户端接收服务器地址集合;

C5.获取权重值最小的服务,将C3中获取服务的权重值进行比较,获取值最小的服务;

C6.修改服务的权重值,修改Zookeeper集群中的服务,即C4中获取的权重值最小的服务信息,将其权重值加上C3中服务地址集合的大小,将其权重设置成提供相同服务集群中的最大值;

C7.向服务端发起请求,从C4获取到服务端IP和端口后,通过Netty发送客户端封装的请求对象;

C8.服务端获取请求对象,接收请求数据进行反序列化得到请求对象;

C9.调用服务及方法,根据请求中的参数,进行反射,调用对应服务及方法,获取返回结果;

C10.封装响应对象,将业务调用结果封装到响应对象中并序列化后发往客户端;

C11.反序列化响应对象,客户端将服务端响应的数据反序列化,获取响应对象;

C12.将响应数据返回给请求类。

2.根据权利要求1所述的基于zookeeper和netty的分布式远程调用方法,其特征在于:所述服务端模块的服务封装,采用工厂模式,将所有的服务封装到一个Map集合中,并采用单例模式,提供唯一的服务访问点。

3.根据权利要求1所述的基于zookeeper和netty的分布式远程调用方法,其特征在于:服务注册包括(1)根据业务不同,在Zookeeper中注册不同的目录结构;(2)每个业务下注册节点,创建临时自动编号节点,并对服务启动监听,如果服务挂掉,客户端不再调用此服务,同时新增和修改节点时客户端也能发现;(3)每个节点包含提供相同服务的集群信息,客户端查找服务时,要返回权重值最小的节点,当节点被调用时,权重设置成相同服务集群中的最大值。

4.根据权利要求1所述的基于zookeeper和netty的分布式远程调用方法,其特征在于:所述服务端模块根据业务进行分类向Zookeeper注册服务,能够将业务与业务进行解耦。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中安智达科技有限公司,未经北京中安智达科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201810093687.6/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top