游戏中Dubbo类的RPC设计时的注意要点

一.消费方

1.需要使用到动态代理,代理指定的接口,这样子接口被调用时,就可以拿到:"类名+ 方法名+参数+返回值" 这些类型。

2.既然是rpc,那么接口被调用时,肯定在动态代理中会进行网络消息的发送,由于是远程调用,那么必然动态代理的proxy参数其实是用不到的,因为返回的话,是依赖于远程的服务提供者。

3.阻塞,等待消息的返回,支持超时。

二.服务提供者

1.必然要注册到zk中,其实就是本地一个Map,知道了调用者想调用啥时,知道具体的实现。也就是维护了一个Map<String, InterfaceImpl>的map。

2.消费者通过网络 把想要调用的信息传递过来后,服务提供者就找到实现,从而调用,调用后,再返回。

三、请求返回统一封装

RpcRequest

RpcResponse

为啥要封装下呢?

对于Request,这是因为有一些共性,比如:消费者需要存储"类名+ 方法名+参数+返回值"。

对于Response,则要告诉是否调用成功,还是说超时了。

四、序列化

我们这里采用kryo,因为我们希望是二进制级别的,而且是: 在修改签名时,我们不希望再直接生成下proto。

相关推荐
国科安芯9 分钟前
空间锂离子电池组管理系统CANFD通信网络的辐射可靠性设计
网络·信息与通信·canfd·电池·低轨卫星·抗辐射
2401_8685347827 分钟前
网规物流企业网络问题
网络
0+11131 分钟前
Linux --IP分片和组装
linux·网络·tcp/ip
zxanz11 小时前
SSL 证书该怎么申请?操作复杂吗?
网络·网络协议·ssl
该逃避避1 小时前
如何利用代理IP进行更好广告验证?
linux·服务器·网络
QYR_112 小时前
憎水涂料市场分析:2032年全球规模将达46.49亿美元
网络·安全
砚凝霜3 小时前
信息安全工程师下午案例大题冲刺攻略|题型 + 十大专题 + 答题模板 + 数字口诀,直接背
网络
honsor3 小时前
POE供电RJ45以太网温湿度传感器原理、组网与对接实战
网络·物联网·tcp/ip
脆性薄片搬运谢工3 小时前
横架机械手安全光栅保护区域划分的五个核心维度
网络·安全·机器人·脆性薄片搬运专机·伯努利吸盘·超薄玻璃搬运·非接触式上料
workflower3 小时前
无人机注册量与飞行量
大数据·网络·人工智能·云计算·汽车·无人机