• 2024-10-01Protobuf 为什么这么快?解密它背后的高效编码机制与 C++ 实践
    目录1.Protobuf的基本使用1.1定义`.proto`文件1.2生成C++代码2.Protobuf的二进制编码机制2.1Varint编码:更少的字节,更高的效率2.2字段编号与键:精准定位每个数据3.C++序列化与反序列化示例3.1序列化示例3.2反序列化示例4.性能对比与优化分析4.1数据
  • 2024-09-25像JSON一样使用ProtoBuf,空间还能缩小60%,性能提升100%
    引言在前面《释放你九成的带宽和内存:GZIP在解决Redis大Key方面的应用》一文中我使用GZIP算法可以将JSON格式数据的大小缩小88%从而节省了大量的存储和带宽资源,本文介绍另一种JAVA对象序列化神器——ProtoBuf(ProtocolBuffers(),它是由Google开发的一种用于序列化结构化数据的高效、
  • 2024-09-23ProtoBuf介绍及安装
    文章目录序列反序列化ProtoBuf特点安装ProtoBufwindowsUbuntuCentos序列反序列化在网络传输过程当中,可以理解为:发送方接收方它们彼此要通信,先要定好一个规则,也就是协议,双方都能认识的结构化数据(C++中的对象)。网络传输,传输的是二进制序列,将结构化对象转换成二
  • 2024-09-18ubuntu编译grpc & protobuf
    参考:Ubuntu系统中本地编译并安装grpc的C++版本及测试-知乎(zhihu.com)安装依赖:#这些可能都已经安装了sudoapt-getinstallpkg-configautoconfautomakelibtoolmakeg++unzip#下面的可能没安装sudoapt-getinstalllibgflags-devlibgtest-devsudoapt-getins
  • 2024-09-03规控面试复盘
    目录前言一、京东方1、CPP和C的区别是什么?2、讲一下的ROS的话题通信二、Momenta(泊车部门实习面试)1、MPC的预测时间步是多少?2、MPC的代价函数考虑的是什么?三、九识1、智能指针有哪些优缺点?优点:缺点:2、Protobuf的数据传输效率为什么更高?3、Protobuf和ros原生的msg
  • 2024-08-24Protobuf
    什么是protobuf数据在进行网络传输的时候,需要进行序列化,序列化协议有很多种,比如xml,json,protobuf等gRPC默认使用protocolbuffers,这是google开源的一套成熟的结构数据序列化机制。简单使用定义一种源文件,扩展名为 .proto,使用这种源文件,可以定义存储类的内容(消息类型)。pro
  • 2024-08-24关于protobuf的序列化与反序列化
    当我们要使用protobuf进行协议编写,且需要协议在网络中传输的时候,就需要将类或者xxx.proto文件序列化当需要将类序列化,且使用protobuf的时候,我们需要引入Google.Protobuf.Tools3.6.1和protobuf-portable-net2.0.0.668这两个库,版本根据需要自行选择引入类库完成后,将需要序
  • 2024-08-23关于Protobuf在使用中的一些注意点
    Protobuf是谷歌旗下的一款二进制序列化协议协议的编写在项目中新建一个xxx.proto文件文件的格式第一行写protobuf的版本syntax="proto3";第二行写包的名字在C#中就说命名空间的名字,避免重复例如packageTest;接下来写协议内容例如以下示例关于protobuf的具体语法
  • 2024-08-18解密Protobuf:高效数据传输的秘密武器
    简介ProtocolBuffers(简称Protobuf)是由Google开发的一种用于数据序列化技术。与传统的XML和JSON相比,Protobuf具有更高的性能和更小的消息体积,特别适用于需要高效数据交换的场景特点速度快:Protobuf在序列化与反序列化数据时速度极快占空间小:Protobuf序列化后的二进制数据非
  • 2024-08-11使用grpc开发RPC服务
    grpc简介gRPC是谷歌开源的一款跨平台、高性能的RPC框架,笔者目前主要使用它来进行后端微服务的开发。可能会有的同学对RPC不太熟悉,其实在笔者看来,RPC和HTTP并无多大的区别都是一种调用方式,区别则是在于RPC会限制传输协议、传输的参数等,以此换取高效的传输流程,比如grpc就使用的是g
  • 2024-08-10【C++】protobuf的简单使用(通讯录例子)
    protobuf的简单使用(通讯录例子).proto文件的编写保留字段字段唯一编号protobuf的类型enum类型Any类型oneof类型map类型完整通讯录代码.proto文件write文件read文件运行结果.proto文件的编写syntax用于指定protobuf的语法;package当.proto文件编译后再*.pb.h文件中会
  • 2024-08-07golang sliver二次开发自定义命令(格式乱后面再调)
    准备工作sliver客户端和服务端之间命令的通信采用的grpc,服务端和和植入程序通信使用的protobuf,所以在开发之前需要了解grpc和protobuf,相关文档:https://jergoo.gitbooks.io/go-grpc-practice-guide/content/chapter2/hello-grpc.htmlhttps://jergoo.gitbooks.io/go-grpc-pra
  • 2024-08-03protobuf pwn题专项
    protobufpwn准备工作安装protobuf编译器sudoapt-getinstalllibprotobuf-devprotobuf-compiler安装python依赖库pip3installgrpciopip3installgrpcio-toolsgoogleapis-common-protos安装pbtkgitclonehttps://github.com/marin-m/pbtkggbond来自DubheCTF
  • 2024-08-02protobuf编译和安装
    编译环境介绍:ubuntu24.04LTSgcc(Ubuntu13.2.0-23ubuntu4)13.2.0g++(Ubuntu13.2.0-23ubuntu4)13.2.0cmakeversion3.28.3 #下载源码gitclonehttps://github.com/protocolbuffers/protobuf.gitcdprotobufgitsubmoduleupdate--init--recursi
  • 2024-07-31基于VScode和C++ 实现Protobuf数据格式的通信
    目录1.Protobuf概述1.1定义1.2Protobuf的优势2.Protobuf语法3、序列号和反序列化3.1.pb.h头文件3.2序列化3.3反序列化4、测试用例Protobuf详细讲解链接1.Protobuf概述1.1定义protobuf也叫protocolbuffer是google的一种数据交换的格式,它独立于语
  • 2024-07-29现在有什么赛道可以干到退休?
    最近,一则“90后无论男女都得65岁以后退休”的消息在多个网络平台流传,也不知道是真是假,好巧不巧今天刷热点的时候又看到一条这样的热点:现在有什么赛道可以干到退休?点进去看了几条热评,第一条热评说的就是:“除了体制内,哪里可以干到65岁退休?”结果后面就有两个人发了两张截图截图,内
  • 2024-07-27protobuf 25.4编译以及visual studio项目配置
    title:protobuf编译配置date:2024-07-2716:00:00categories:other工具安装tags:MSProtobuf下载官方下载地址https://github.com/protocolbuffers/protobuf/releases版本没必要最新,注意自22.0版本开始,有重大改变,CMakelist移至根目录而不是cmake文件夹,
  • 2024-07-23protobuf 随笔记录
    一:抓包,将得到的protobuf数据的hex保存为bin文件,后续使用一下代码,将得到的乱码数据打印出来对应的类型importblackboxprotobufwithopen("pb.bin","rb")asf:data=f.read()parsed_data=blackboxprotobuf.decode_message(data)二:得到的类型数据如下:({'1':1,'2':20,
  • 2024-07-20【ProtoBuf】通讯录实现(网络版)
    Protobuf还常用于通讯协议、服务端数据交换场景。那么在这个示例中,我们将实现一个网络版本的通讯录,模拟实现客户端与服务端的交互,通过Protobuf来实现各端之间的协议序列化。需求如下:客户端可以选择对通讯录进行以下操作:新增⼀个联系人删除⼀个联系人查询通讯录列表查
  • 2024-07-19Protobuf详解与使用
    目录一、Protobuf序列化概述二、Protobuf的原理三、protobuf的安装四、定义message五、编译message文件六、应用Protobuf七、Message的使用1、Message的基本用法2、Message的嵌套使用一、Protobuf序列化概述protobuf是一种比json和xml等序列化工具更加轻量和高
  • 2024-07-17Python实现基于http通信的protobuf数据传输的案例,包括请求者和接收者
    个人名片
  • 2024-07-17Protobuf传输协议解析与应用
    个人名片
  • 2024-07-172024go语言micro框架搭建踩坑解决(go版本: 1.22.5, 操作系统: ubuntu24.04, 感觉坑和操作系统版本无关)
    在这两天准备学习go语言微服务相关东西时要使用micro框架,因为看的视频是用的低版本go编译器和GOPATH,使用的是旧版本的micro框架,因为找不到和视频对应的框架版本,下载了半天跑不动网上一搜全是22,21甚至更早的搭建micro的文档,很到东西现在不适应了(比如"github.com/golang/pr
  • 2024-07-16protobuf简介
    文章目录1.Protobuf是什么2.Protobuf使⽤流程介绍3.ProtoBuf快速上手3.1创建.proto⽂件3.2添加注释3.3具体编写3.4编译contacts.proto文件1.Protobuf是什么  ProtoBuf(全称ProtocolBuffer)是数据结构序列化和反序列化框架,它具有以下特点:语⾔⽆关、平
  • 2024-07-14Spring Boot集成grpc快速入门demo
    1.什么是GRPC?gRPC 是一个高性能、开源、通用的RPC框架,由Google推出,基于HTTP2协议标准设计开发,默认采用ProtocolBuffers数据序列化协议,支持多种开发语言。gRPC提供了一种简单的方法来精确的定义服务,并且为客户端和服务端自动生成可靠的功能库。在gRPC客户端可以直接调用不同