gRPC&protocol buffers

文章目录

  • 一、gRPC是什么?
  • 二、协议缓冲区
    • 1.概述
    • 2.解决了哪些问题
    • 3.好处


一、gRPC是什么?

gRPC&protocol buffers_第1张图片

  • 在gRPC中,客户端应用程序可以直接调用不同机器上的服务器应用程序上的方法,就像他的本地对象一样,使您更容易的创建分布式应用程序和服务。
  • 与许多RPC系统一样,gRPC基于定义服务的思想,指定可以远程调用的方法及其参数和返回类型。
  • 在服务端,服务器实现这个接口并运行一个server来处理客户端的调用。
  • 在客户端,客户端有一个存根(stub),它提供与服务器相同的方法。

二、协议缓冲区

1.概述

  • 协议缓冲区提供了一种语言中立,平台中立,可扩展的机制,用于向前兼容和向后兼容的方式序列化结构化数据。类似JOSN但更小更快,并且和本地语言绑定。
  • 协议缓冲区是定义语言(proto文件中创建),proto编译器生成的与数据接口的代码,特点与语言的运行时库以及写入文件(通过网络连接)。

2.解决了哪些问题

  • 协议缓冲区为大小高达几兆字节的类型化结构化数据包提供了序列化方式。该格式使用于临时的网络数据和 长期数据存储。
  • 在构建.proto文件时调用proto编译器以及生成各种编程语言的代码来操作相应的协议缓冲区。每个生成的类都包含每个字段的简单访问器和方法,用于序列化和解析整个结构和原生字节之间的关系。
  • 由于数据可能要保留一段时间,向后兼容性至关重要,协议缓冲区对于修改添加删除现有字段,不会破坏现有服务。

3.好处

  • 紧凑的数据结构
  • 快速解析
  • 许多编程语言的可用性
  • 通过自动生成的类优化功能

你可能感兴趣的:(rpc,java)