【51CTO.com原创稿件】 RPC (Remote Procedure Call):远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的思想。 RPC 是一种技术思想而非一种规范或协议,常见 RPC 技术和框架有:应用级的服务框架:阿里的 Dubbo /Dubbox、Google gRPC、Spring Boot/Spri ......
232
0
0
2023-09-15
目录正文1:如何运行项目2:从客户端调用开始(springboot-zk-study项目)3:服务端处理请求4:接下来要做什么正文 项目地址:gitee.com/baojh123/rp…netty-study 这个项目是没用到的,可以删掉,主要是测试Netty自定义协议的1:如何运行项目1:本地起一个zookeeper服务2: 只需要运行 rpc-serve ......
178
0
0
2023-08-06
GO-RPC使用go语言实现的简易RPC框架,采用protobuf作为序列化方式,zookeeper为注册中心;手动实现类似于java的动态代理机制简化rpc框架的使用。同时底层部分设计参考了Nettey的一些思路。地址github一. examples定义接口type GetByName func(stu *protoc.Student,i8 int8,i ......
366
0
0
2022-10-23
介绍本文主要介绍RPC是什么, 为什么要使用RPC,使用RPC需要解决问题及RPC使用实例RPC是什么RPC(Remote Procedure Call)远程过程调用协议,一种通过网络从远程计算机上请求服务,而不需要了解底层网络技术的协议。RPC它假定某些协议的存在,例如TPC/UDP等,为通信程序之间携带信息数据。在OSI网络七层模型中,RPC跨越了传输层 ......
339
0
0
2022-10-07
rpc原理很简单,客户端把请求方法,参数等信息编码后传给服务端,服务端反解码后,找到对应的方法执行,并且把结果编码后返回给客户端。服务端重要结构type Server struct { serviceMap sync.Map // map[string]*service 注册的服务存放 reqLock sync.Mutex // pro ......
311
0
0
2022-07-13
在大规模的复杂互联网业务中,RPC框架是构建后端分布式系统必不可少的一个基础组件。它通过封装序列化/反序列化、网络IO操作、网络报文传输等诸多细节,有的甚至集成服务注册、监控与运营等功能,让开发人员专注于业务逻辑的开发,大幅提升了业务开发团队的工作效率。那如此强大的RPC框架究竟是个什么样的工作原理呢?今天,我们就对RPC来做一个全面的了解。什么是RPCRP ......
399
0
0
2022-04-21
对于这个问题,个人觉得是没有对rpc有一个深入的了解,可以自己实现一下过程,相信比阅读多少参考文档更有效。对于这个问题,简单的区别下。涉及更深入知识请自行翻阅之前内容。首先:http 和 rpc 并不是一个并行概念。http是超文本传输协议,应用层网络协议。rpc不是协议,是指远程过程调用,对不同应用间相互调用的一种描述。其调用协议通常包含传输协议和编码协议 ......
356
0
0
2022-04-19
前言看到很多人不理解什么是RPC,特撰文分享一下。(尤其是那些分不清http和rpc的人,一定要看)RPC概念RPC即远程过程调用(Remote Procedure Call),这么讲你可能不明白,画个图这就是一个RPC场景我习惯这么去理解:RPC(远程过程调用)是一功能的称呼,这个功能就是客户端和服务端之间数据交互的过程,不是一个具体的技术/代码。就好比“ ......
309
0
0
2022-04-19
之前在 RPC 框架底层到底什么原理得知了RPC(远程过程调用)简单来说就是调用远程的服务就像调用本地方法一样,其中用到的知识有序列化和反序列化、动态代理、网络传输、动态加载、反射这些知识点。发现这些知识都了解一些。所以就想着试试自己实现一个简单的RPC框架,即巩固了基础的知识,也能更加深入的了解RPC原理。当然一个完整的RPC框架包含了许多的功能,例如服务 ......
350
0
0
2022-04-07