package main type Company struct { Name string } type PrintResult struct { Info string Err error } func RpcPrintln(employee Employee) PrintResult { /** 客户端 1、 建立连接tcp/http 2、 将employee对象序列化成json字符串 3、 发送json字符串-接收成功后实际上你接受的是一个二进制的数据 4、 接收服务端返回的json字符串。等待服务器发送结果。 5、 将json字符串反序列化成PrintResult对象 --反序列化 服务端 1、 监听网络端口80 2、 接收客户端发送的json字符串 3、 将json字符串反序列化成Employee对象 4、开始处理业务逻辑 5、将PrintResult处理结果对象序列化成json字符串 6、 发送json字符串给客户端,将数据返回。 rpc 中的第二点 传输协议、数据编码协议 http1.x http2.0协议 http 协议底层使用的也是tcp http现在主流的是1.x 这种协议一旦返回结果就断开断开就 grpc使用http协议2.0 长连接 既有http协议特征又有 tcp协议长连接特征 */ } type Employee struct { Name string companny Company } func main() { }
标签:协议,调用,http,json,化成,PrintResult,rpc,字符串,远程 From: https://www.cnblogs.com/gaoyuechen/p/18469446