gRPC--简单学习笔记
admin
2024-03-01 06:05:19
- 与微服务相关
- 服务间通信本质是交换信息,而交换信息的中介/桥梁是API。
- 目前构建API最受欢迎的仍然是使用Restful(HTTP-JSON),因为它简单、快速、易懂。
- 一个API:
- 客户端发送一个请求(Request)
- 服务端接收请求,并返回一个响应(Response)
- RPC,全称Remote Procedure Call,中文译为远程过程调用。通俗地讲,使用RPC进行通信,调用远程函数就像调用本地函数一样,RPC底层会做好数据的序列化与传输,从而能使更轻松地创建分布式应用和服务。
- gRPC,则是RPC的一种,它是免费且开源的,由谷歌出品。使用gRPC,只需要定义好每个API的Request和Response,剩下的gRPC这个框架会自动搞定
- gRPC的典型特征就是使用protobuf(全称protocol buffers)作为其接口定义语言(Interface Definition Language,缩写IDL),同时底层的消息交换格式也是使用protobuf。
- gRPC的通信流程:
- gRPC通信的第一步是定义IDL,即接口文档(后缀为.proto)
- 第二步是编译proto文件,得到存根(stub)文件。
- 第三步是服务端(gRPC Server)实现第一步定义的接口并启动,这些接口的定义在存根文件里面
- 最后一步是客户端借助存根文件调用服务端的函数,虽然客户端调用的函数是由服务端实现的,但是调用起来就像是本地函数一样。
- 由于proto文件的编译支持多种语言(Go、Java、Python等),所以gRPC也是跨语言的。
相关内容
原创 8...
上周门诊来了位 62 岁的张阿姨,得糖尿病快五年了,平时管嘴特别严,糖果、点心、甜饮料一概不碰,连水...
原创 餐...
2026年9月8日晚,南京浦口区泰冯路29号,墨语江南·阿婆菜餐厅户外帐篷里,灯火温润,其间还天降喜...
原创 它...
人到中年肝肾精血慢慢耗损,容易腰膝酸软、头晕眼花、精神疲惫。黄精性平,擅长补肝肾、益精血,搭配不同食...