Go RPC可以利用tcp或http来传递数据,可以对要传递的数据使用多种类型的编解码方式;具体关于rpc的知识参考我的:
如果对rpc连接载体不清楚的话看这里:
https://blog.csdn.net/u013755520/article/details/91369196
rpc是一个协议,这个协议是基于连接的,在连接上绑定的方法,在哪些连接上绑定,是需要确定的,这就是载体。
如mysql协议-基于连接的协议-她的连接载体是 tcp的基于所有ip的3306端口。
go语言中自带的rpc包,是基于tcp的载体,数据传输格式是gob,go自带的jsonrpc是基于http的,数据传输是json格式。
而gRPC的载体是http/2,数据格式是protobuf.
rest的载体是http1,数据传输格式多种:如json.
使用grpc的步骤:
1.写通信的xx.proto文件:参考:https://blog.csdn.net/u013755520/article/details/91580273
2.编译xx.prot