常用数据格式:json、bson、msgpack

LLaVA-1.5:多模态视觉问答新突破 LLaVA-1.5在多模态视觉问答(VQA)任务中取得了显著进展,主要得益于视觉-语言连接器的优化和特定任务数据集的增加。通过将连接器升级为两层MLP,模型在处理视觉与语言关系时表现更佳。同时,引入如OKVQA、OCRVQA等数据集,增强了模型在复杂视觉推理任务中的能力。在11个基准测试中,LLaVA-1.5超越了现有方法,展示了其强大的多模态能力。此外,模型通过提升输入图像分辨率、扩展语言模型和改进多语言能力,进一步提升了性能。尽管在短格式回答任务中初期表现不佳,但通过调整提示格式和微调,其性能显著提升 阅读详情

JSON(JavaScript Object Notation)

  • 常用文件格式,可读性高

  • 一般用于远端配置,客户端基础配置等。


BSON(Binary JSON)

  • 二进制的Json,一般用于服务器MongoDB存储。

  • 类型定义:https://bsonspec.org/spec.html

{"hello": "world"} →
\x16\x00\x00\x00           // total document size
\x02                       // 0x02 = type String
hello\x00                  // field name
\x06\x00\x00\x00world\x00  // field value
\x00                       // 0x00 = type EOO ('end of object')
  • 和json的差异: https://www.mongodb.com/json-and-bson

    • 更紧凑:二进制存储数据,json是字符类型,bson有时间类型,二进制对象等,更省空间。

    • 更快解析:json反序列化需要逐个字符解析,bson有记录类型和长度,可以更快解析。

    • 修改更快:json数据存储无类型,比如你要修改基本一个值,从9到10,由于从一个字符变成了两个,所以可能其后面的所有内容都需要往后移一位才可以。而使用BSON,你可以指定这个列为数字列,那么无论数字从9长到10还是100,我们都只是在存储数字的那一位上进行修改,不会导致数据总长变大。当然,在MongoDB中,如果数字从整形增大到长整型,还是会导致数据总长变大的。

    • 二进制可读性差。


msgpack(MessagePack)

  • 二进制的json,常用于通信数据包装。https://msgpack.org/

  • 类型定义:https://github.com/msgpack/msgpack/blob/master/spec.md

    在这里插入图片描述

  • 比bson数据更紧凑,没有\x00结尾、类型和长度组成一个字节等。

  • 服务器gs和客户端lua都是一样名字的接口:msgpack.pack(table)


protobuf(Protocol Buffers)

  • https://github.com/protocolbuffers/protobuf

  • 常用协议格式,也是二进制,但我们游戏没用这个,主要是要预先定义数据格式(每次增删协议都要维护),有点像unity的Serializable。

  • 某些情况比MessagePack压缩解析更快。

  • 协议格式:标签号+类型号 | 数据大小 | 具体数据

enum Corpus {
  CORPUS_UNSPECIFIED = 0;
  CORPUS_UNIVERSAL = 1;
  CORPUS_WEB = 2;
  CORPUS_IMAGES = 3;
}

message SearchRequest {
  string query = 1;
  int32 page_number = 2;
  int32 results_per_page = 3;
  Corpus corpus = 4;
}

MemoryPack

  • https://github.com/Cysharp/MemoryPack

  • 相比其他数据封装读取更快,但压缩不一定更好。

Intouch间接变量(扩展) 间接变量只是Intouch提供给开发者的便捷方式之一,并不是所有情况都一定要使用间接变量,有时候用条件语句或者内存变量的方式也能起到类似的作用。 阅读详情

相关推荐

Mac 环境配置jdk、Maven

3、终端打开配置jdk时候建好的脚本文件: open -e .bash_profile。4、查看maven是否安装成功和系统能不能识别maven/mvn命令:⬇️。输入⬇️并保存: 其中第一行JAVA_HOME替换为自己下的jdk路径。,安装编译好的二进制版本,具体安装zip还是tar.gz我看的。5、查看jdk是否安装成功和系统能不能识别java命令:⬇️。至此,我的Mac系统的环境配置jdk、Maven完成!然后就发现我的maven命令还是没作用,不识别,下载后直接安装即可,很快,点几下就OK了。

weixin_42416791的博客 4403

Msgpack-RPC Client类深度解析:让服务调用像点外卖一样简单

本文生动解析msgpackrpc库中的Client类,将其比作"智能外卖小哥",展示其在分布式系统中的核心作用。从基本概念入手,详细讲解Client的创建、方法调用(同步/异步)、连接管理等关键特性。通过三个实战案例(基础服务调用、参数传递、异步高并发)配合完整代码和流程图,全面展示Client的应用场景。文章还涵盖安装配置、类层次结构、异常处理等内容,帮助开发者快速掌握msgpackrpc客户端编程技巧,提升分布式系统开发效率。

weixin_42108533的博客 909

【Qt】Qt6系列教程汇总_qt6教程

简介:QT相关电子书、建议和相关参考网址。

2401_87556657的博客 1186

MongoDB:JSON and BSON

什么是 JSON MongoDB-JSON连接 什么是 BSON MongoDB 使用 BSON 还是 JSON JSON 与 BSON 架构灵活性和数据治理

汤键的博客 2417

无人机航拍图像匹配——SIFT算法实践(含代码)

无人机航拍图像匹配——SIFT算法实践(含代码)

zhangzhao147的博客 6395

Jetson工业级应用指南:用Orin NX 16GB打造多摄像头AI质检系统

本文详细介绍了如何利用NVIDIA Jetson Orin NX 16GB构建高效的多摄像头AI质检系统,涵盖硬件选型、软件优化及产线部署全流程。通过100 TOPS的AI算力和多路视频处理能力,Orin NX在工业4.0时代展现出卓越的实时缺陷检测性能,特别适合嵌入式AI应用场景。

Pepper的专栏 308

asp.net怎么生成json数据_最快的JSON格式解析

服务之间交互数据有3种选择:JSON格式:可读性强、可扩展、容易debug。自定义二进制格式:省流量、解析速度快。缺点是不透明,写解析器麻烦,不好debug,可扩展性差。protobuf:比较重量级,生成一大坨源码。学习成本高。支持编程语言有限。修改接口比较麻烦。实际应用上我是反对使用protobuf,但是JSON格式在流量和解析速度上代价太大。所以我就想是否能有一个格式即有JSON格式的优点,又...

weixin_39696197的博客 604

【OTDR曲线工具箱】04 批量生成sor文件

软件下载地址:http://120.78.150.214:9999/isora.zip 通过一个测试数据sor文件,批量生成多个测试文件(基于Bellcore GR196及SR-4731标准)。主要考虑哪些问题: 1、sor测试是否符合要求(主要是衰减系数) 2、多个文件的创建时间 3、文件必须随机处理,不要看省去一模一样。 来说说怎么操作的 第一步:选择参考曲线 参考曲线的选择由两种方法:从文件中导入、从曲线库中选择。 其中曲线库分为公共库和个人库两种,平时浏览的sor文件都可以加载到库中。 第二步

夜晚是传说的博客 5275

msgpack---序列化

效率:测试 msgpack,json,serialize 打包10000次 长度50,62,87 耗时9,95ms,17.45ms,8.85ms 解包 耗时14.76ms,23.93ms,14.61ms   MessagePack 是个什么东东?先来看一段官方的解释: MessagePack is an efficient binary serialization format

senlin1202的博客 7243

AUTOSAR进阶图解==>AUTOSAR_SWS_BSWGeneral

本文详细解析AUTOSAR基础软件(BSW)模块的通用规范,涵盖其分层架构、配置管理、初始化流程和状态转换机制。AUTOSAR采用清晰的分层设计,包括应用层、服务层、ECU抽象层和微控制器抽象层,各层模块通过标准化接口交互。BSW模块配置采用类型化定义,支持预初始化、初始化和后期构建配置。文档还阐述了模块初始化流程中的依赖管理,以及运行时的状态转换与错误处理机制,为汽车电子控制单元的标准化开发提供规范指导。

一名留德华的,康德的信徒的,专注于汽车电子领域的博客 1128

反爬虫:POST 请求参数中 Sign 的加密机制详解,并设计带 Sign 校验的网站

本文介绍了API请求中sign签名的生成原理及实现方法。sign是通过对请求参数加密生成的一串字符串,用于验证请求合法性,防止参数篡改、重放攻击和伪造请求。其生成步骤包括参数排序、拼接字符串、加盐和哈希加密。文章还演示了如何在FastAPI后端实现带sign验证的新闻网站,包括参数校验、时间戳验证和签名比对等安全措施,有效提升API安全性,增加爬虫逆向难度。

数据知道的博客 4077

1、mongodb-- BSON 学习和JSON性能对比

本文系统梳理了 MongoDB 所采用的 BSON(二进制 JSON)数据结构的设计原理、存储格式及其与 JSON 的对比优势。BSON 具备更快的访问速度、更高效的存储空间利用率以及更丰富的数据类型,广泛应用于 MongoDB 的文档模型。文章还介绍了 BSON 的解析与封装流程,并通过实际案例分析其在性能和应用场景中的表现。通过本篇内容,读者可以深入理解 BSON 的底层实现及其在 MongoDB 中的重要作用。

梦想飞舞的专栏 1692

【ESD专题】从原理上分析TVS管PCB Layout的经验法则

我们常常会听到的一些经验法则,按这些经验法则去做,一般也不会有什么问题,但是到底是为什么呢? 没有从原理上分析和证明的时候,往往在Layout之后还要担心实际测试结果怎么样。或是在实际测试出问题后,根本无法进行分析,难道说修改一个版本就好了?那要从哪里修改呢?也无从下手呀。...

一点硬件 1446

igbinary msgpack bson json php中使用

[b]简介[/b] igbinary, mspack, bson在数据格式话,类似json使用 [b]安装igbinary[/b] #git clone https://github.com/igbinary/igbinary.git #/usr/local/php5.3/bin/phpize #./configure CFLAGS="-O2 -g" --enab...

lnnu_jxxy的专栏 406

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

JSONCONS多格式支持:轻松转换JSON、CBOR、MessagePack和BSON的终极指南

JSONCONS是一个强大的C++头文件库,专门用于处理JSON及多种JSON-like二进制数据格式。这个库为开发者提供了简单高效的数据格式转换解决方案,支持JSON、CBOR、MessagePack、BSON、UBJSON、CSV等格式的互转。无论你是处理网络通信、数据存储还是系统间数据交换,JSONCONS都能帮你轻松应对数据格式转换的挑战。😊 ## 🔥 JSONCONS的核心优势

gitblog_00004的博客 937

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

通信技术和数据格式性能比较调查(Websocket,Ajax,Json,Msgpack,Bson)

首先声明这是2016年1月份的测试结果 收到委托,需要测试两种应用环境下的性能  1-request/response型的  特征:数据量大,对数据格式的要求:网络传输时的数据要小  2-realtime型  特征:数据量小,但是对通信速度要求很高。需要从服务器向客户端主动推送数据 选定以下组件  数据格式:  1, JSON 带有语义,可读性较好,但是数据量大,网络负载高。  

wangyan_1111的博客 1436

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

深入解析 nlohmann/json 的 input_format_t:六种输入格式枚举与 SAX 解析实战

`nlohmann::basic_json::input_format_t` 是 "JSON for Modern C++"(nlohmann/json)中用于声明输入数据格式的核心枚举,它决定了 `sax_parse` 系列接口在反序列化文本或二进制数据时究竟走哪一条解析路径。本文以 [官方 API 文档](https://link.gitcode.com/i/a0f28c86e245721c3

gitblog_00444的博客 638

Python下各种格式的编码效率初步测试(JSON,BSON, bz2, lzma,msgpack)

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34150224的博客 279

5步在Windows装好WinBtrfs:读写Btrfs分区完整指南

WinBtrfs 是一个开源的 Windows 内核驱动,装上它,Windows 就能像读写 NTFS 一样原生读写 Linux 的 Btrfs 分区,支持快照、压缩、RAID 和 scrub。本文面向想摆脱虚拟机和转换工具的 Windows 用户,带你 5 步装好 WinBtrfs 安装命令级流程,再顺手学会子卷快照和备份操作。 ## 它解决什么问题 你有没有遇到过这些情况: - 一块装了

gitblog_00093的博客 1046

【亲测免费】 探索高效且灵活的JSON解析库——JSONCONS

在现代软件开发中,JSON作为一种轻量级的数据交换格式,已经成为处理API和数据存储的关键部分。**JSONCONS** 是一个强大的C++头文件库,旨在提供对JSON以及类似CBOR等数据格式的全面支持。它的设计注重性能和灵活性,让开发者能够以多种方式与JSON数据进行交互。 ## 项目介绍 JSONCONS不仅仅是普通的JSON解析库,它还提供了对CBOR( Concise Binary ...

gitblog_00072的博客 1044

终极指南:如何用现代C++优雅处理JSON数据

还在为C++中的JSON解析而头疼吗?nlohmann/json库为你带来了革命性的解决方案!这个单头文件、零依赖的现代C++ JSON库,让你能够像处理原生数据类型一样轻松操作JSON。无论你是C++新手还是经验丰富的开发者,本文将带你全面掌握这个强大的工具,让你的JSON处理变得简单高效。 [![JSON for Modern C++标题图](https://raw.gitcode.com/

gitblog_00562的博客 696

降维打击(序列化)的流行手段

上一堂课介绍了message pack,一种非常有潜力的数据格式,市面上还有其他的格式比如json,xml,bson,甚至一些标记语言(html,markdown,yaml)和他们的字符编码utf-8。这些看似毫无关联的标记语言,文件格式和字符编码其实都属于一个大类:序列化格式。 今天来做一个全面对比,对他们的优缺点,性能,应用场景做一个全面分析。 首先的问题是: ...

全栈空间 1887

nlohmann/json:C++ JSON 库 5 分钟上手与选型指南

nlohmann/json 是一个单头文件的 C++ JSON 库,面向需要解析、生成、转换 JSON 数据的 C++ 开发者。把一个 json.hpp 放进工程就能干活:读写配置、处理 API 响应、切换二进制格式,不引入构建脚本,也不带第三方依赖。 [![C++ JSON 库 nlohmann/json 官方标题图](https://raw.gitcode.com/GitHub_Trendi

gitblog_00138的博客 787

C++中处理JSON的务实选择:nlohmann/json 单头文件集成与核心用法

订单服务收到一段 HTTP 响应体,里面是嵌套三层的订单明细,你要取其中的实付金额累加、改一个字段再写回文件。这类需求几乎每个 C++ 后端都会撞上,选 JSON 库时通常要在三件事之间权衡:依赖有多重、API 是否顺手、出错时行为是否可预期。nlohmann/json 的取向是前两件:整个库就是一个单头文件 `json.hpp`,无第三方依赖,把解析、字段访问、类型转换、序列化收在同一个动态类型

gitblog_00552的博客 888

C++反射从未如此简单:reflect-cpp完全指南与实战教程

reflect-cpp是一个革命性的C++20反射库,它彻底改变了C++开发者在序列化、反序列化和数据验证方面的工作方式。通过编译时反射技术,这个强大的库让原本复杂的反射编程变得前所未有的简单和高效,同时支持JSON、XML、YAML、CBOR、MessagePack等15种数据格式。 ## 项目核心价值与定位 在C++开发领域,对象序列化一直是个痛点。传统的序列化方案要么需要大量重复代码,要

gitblog_00912的博客 737

nlohmann/json完全指南:现代C++中JSON处理的高效解决方案

还在为C++中的JSON数据解析和序列化而烦恼吗?nlohmann/json库为现代C++开发者提供了终极JSON处理方案。这个仅头文件的库以其直观的API、零依赖设计和卓越的兼容性,已成为C++社区中最受欢迎的JSON库之一。无论是配置文件处理、API通信还是数据存储,nlohmann/json都能提供高效、安全的JSON操作体验。 ## 项目概述与核心价值 nlohmann/json是一个

gitblog_00104的博客 832
上一篇: 物理引擎Box2D
下一篇: 游戏内常见加密
ChiLi_Lin
博客等级 码龄12年 760粉丝 184原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值