码农知识堂 - 1000bd
Python
PHP
JS/TS
JAVA
C/C++
C#
GO
Kotlin
Swift
gRPC--简单学习笔记
与微服务相关
服务间通信本质是交换信息,而交换信息的中介/桥梁是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也是跨语言的。
相关阅读:
10个前端开发常用的速查网站
Hutool工具包导入excel文件数据到数据库
JVM常用概念之扁平化堆容器
【iOS】JSONModel的基本使用
【卫朋】结构设计:如何使用 PROE 导出 CAD 文件?
记一次 HTTPS 抓包分析和 SNI 的思考
不知道PDF转PPT转换器哪个好用?分享三个简单好用的办公用具
Flowable(一个开源的工作流和业务流程管理引擎)中与事件相关的一些核心概念
【附源码】Python计算机毕业设计汽车租赁系统
JWT令牌
原文地址:https://blog.csdn.net/weixin_45647721/article/details/128103850
最新文章
沪漂五周年了:我越来越迷茫了
Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
MySQL-Seconds_behind_master的精度误差
[MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
Agent OS :五种驯服不确定性的范式
PortSwigger SQL注入LAB11
数据库即时编译JIT
[Begin]AI Learn Data Day 0
深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
热门文章
十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
奉劝各位学弟学妹们,该打造你的技术影响力了!
五年了,我在 CSDN 的两个一百万。
Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
面试官都震惊,你这网络基础可以啊!
你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
心情不好的时候,用 Python 画棵樱花树送给自己吧
通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
13 万字 C 语言从入门到精通保姆级教程2021 年版
10行代码集2000张美女图,Python爬虫120例,再上征途
小工具
小游戏
Copyright © 2022 侵权请联系
2656653265@qq.com
京ICP备2022015340号-1
京公网安备 11010502049817号