码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • gRPC--简单学习笔记


    1. 与微服务相关
    2. 服务间通信本质是交换信息,而交换信息的中介/桥梁是API。
    3. 目前构建API最受欢迎的仍然是使用Restful(HTTP-JSON),因为它简单、快速、易懂。
    4. 一个API:
      1. 客户端发送一个请求(Request)
      2. 服务端接收请求,并返回一个响应(Response)
    5.  RPC,全称Remote Procedure Call,中文译为远程过程调用。通俗地讲,使用RPC进行通信,调用远程函数就像调用本地函数一样,RPC底层会做好数据的序列化与传输,从而能使更轻松地创建分布式应用和服务。
    6. gRPC,则是RPC的一种,它是免费且开源的,由谷歌出品。使用gRPC,只需要定义好每个API的Request和Response,剩下的gRPC这个框架会自动搞定
    7. gRPC的典型特征就是使用protobuf(全称protocol buffers)作为其接口定义语言(Interface Definition Language,缩写IDL),同时底层的消息交换格式也是使用protobuf。
    8. gRPC的通信流程:
      1. gRPC通信的第一步是定义IDL,即接口文档(后缀为.proto)
      2. 第二步是编译proto文件,得到存根(stub)文件。
      3. 第三步是服务端(gRPC Server)实现第一步定义的接口并启动,这些接口的定义在存根文件里面
      4. 最后一步是客户端借助存根文件调用服务端的函数,虽然客户端调用的函数是由服务端实现的,但是调用起来就像是本地函数一样。
    9. 由于proto文件的编译支持多种语言(Go、Java、Python等),所以gRPC也是跨语言的。
  • 相关阅读:
    数字信号处理2: 离散信号与系统的频谱分析
    Windows10添加群晖磁盘映射,总是提示用户名密码不正确解决办法
    STM32笔记—USART
    C专家编程 第8章 为什么程序员无法分清万圣节和圣诞节 8.7 用C语言实现有限状态机
    【C++上层应用】7. Web编程*
    6.javase_方法
    gitee page中HTML显示乱码
    SpringCloud集成OpenFeign,轻松RPC
    nuxt2框架知识总结
    Springboot 通过FastJson实现bean对象和Json字符串互转
  • 原文地址:https://blog.csdn.net/weixin_45647721/article/details/128103850
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号