Protobuf安装及使用

一.简介

1.rmi:remote method invocation,只针对java

client:stub

server:skeleton

序列化与反序列化,也叫做:编码与解码,可以将文件压缩从而提升传输速率

2.rpc:remote procedure call,远程过程调用,原理类似rmi,优势在于很多rpc框架是跨语言的

1.定义一个接口说明文件:描述了对象(结构体)、对象成员、接口方法等一系列信息

2.通过rpc框架所提供的编译器,将接口说明文件编译成具体语言文件

3.在客户端与服务器端分别引入rpc编译器所生成的文件,即可像调用本地方法一样调用远程方法

3.google protobuf就是一个优秀的RPC框架/库,与xml相比,它的效率更高

二、安装

编译器版本:protoc-3.3.0-osx-x86_64.zip,解压cd bin后加入到系统路径

pom依赖:

Protobuf安装及使用_第1张图片

三、Demo

Protobuf安装及使用_第2张图片

注:oneof-->同一时间只有一个对象

编译:protoc --java_out=src/main/java src/protobuf/Student.proto

四、netty调用

1.服务端

(1)main

Protobuf安装及使用_第3张图片

(2)Initializer

Protobuf安装及使用_第4张图片

(3)Handler

Protobuf安装及使用_第5张图片

2.客户端

(1)main

Protobuf安装及使用_第6张图片

(2)Initializer

Protobuf安装及使用_第7张图片

(3)Handler

Protobuf安装及使用_第8张图片

你可能感兴趣的:(Protobuf安装及使用)