手写简单的RPC

打印 上一主题 下一主题

主题 870|帖子 870|积分 2610

手写简单的RPC

1.作甚RPC

RPC(Remote Procedure Call,远程过程调用)是一种通过网络从远程计算机程序上请求服务,而不需要相识底层网络技能的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包罗网络分布式多程序在内的应用程序更加轻易。
2.工作原理

RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务器。起首,客户机调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端,进程保持睡眠状态直到调用信息的到达为止。当一个调用信息到达,服务器获得进程参数,计算效果,发送应答信息,然后等待下一个调用信息,末了,客户端调用进程吸收应答信息,获得进程效果,然后调用执行继续举行。
3.架构描述

本例通过服务生产者(provider)、服务消费者(comsumer)、服务框架(framework)三个模块实现简单的RPC案例。
其中服务生产者者负责提供服务,服务消费者通过http请求去调用服务提供者提供的方法,服务框架负责处理服务消费者调用服务提供者的相关逻辑处理。

本例中,消费端需要调用接口ProviderService.class 中的某个方法。生产者模块提供了其具体实现类ProviderServiceImpl.class ;末了,消费者需要通过RPC去调用生成者提供的这个方法。
废话不多说,直接上代码!
4.服务生产者具体实现


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

罪恶克星

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表