Home
  • 计算机网络
  • 操作系统
  • 数据结构与算法
  • 设计模式
  • JavaSE
  • JVM
  • JUC
  • Netty
  • CPP
  • QT
  • UE
  • Go
  • Gin
  • Gorm
  • HTML
  • CSS
  • JavaScript
  • vue2
  • TypeScript
  • vue3
  • react
  • Spring
  • SpringMVC
  • Mybatis
  • SpringBoot
  • SpringSecurity
  • SpringCloud
  • Mysql
  • Redis
  • 消息中间件
  • RPC
  • 分布式锁
  • 分布式事务
  • 个人博客
  • 弹幕视频平台
  • API网关
  • 售票系统
  • 消息推送平台
  • SaaS短链接系统
  • Linux
  • Docker
  • Git
GitHub (opens new window)
Home
  • 计算机网络
  • 操作系统
  • 数据结构与算法
  • 设计模式
  • JavaSE
  • JVM
  • JUC
  • Netty
  • CPP
  • QT
  • UE
  • Go
  • Gin
  • Gorm
  • HTML
  • CSS
  • JavaScript
  • vue2
  • TypeScript
  • vue3
  • react
  • Spring
  • SpringMVC
  • Mybatis
  • SpringBoot
  • SpringSecurity
  • SpringCloud
  • Mysql
  • Redis
  • 消息中间件
  • RPC
  • 分布式锁
  • 分布式事务
  • 个人博客
  • 弹幕视频平台
  • API网关
  • 售票系统
  • 消息推送平台
  • SaaS短链接系统
  • Linux
  • Docker
  • Git
GitHub (opens new window)
  • HTTP

    • Get 与 Post
    • 状态码&字段
    • 输入URL到返回页面全过程
    • HTTP
    • HTTP演进
    • HTTPS
    • WebSocket
    • RPC
      • 为什么需要RPC?
    • 粘包问题
    • Java中的网络请求
    • 请求报文与响应报文
    • HTTP如何保存用户状态
    • 长连接与短连接
    • SSL TLS
  • TCP

  • UDP

  • IP

  • 网络安全

  • 计算机网络
  • HTTP
Nreal
2024-03-03
目录

RPC

# 为什么需要RPC?

背景:

纯裸TCP就能收发数据,但是是个无边界的数据流,应用层需要定义消息格式定义消息边界;

RPC也不是协议,是一种调用方式,像gRPC和Thrift才是具体实现,才是协议,RPC不一定基于TCP协议;

HTTP主要用于B/S架构,RPC用于内部集群和微服务之间,像调用本地方法那样调用远端的服务方法;

WebSocket
粘包问题

← WebSocket 粘包问题→

Theme by Vdoing | Copyright © 2021-2024
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式