随笔 - 47,  文章 - 0,  评论 - 3,  阅读 - 35459
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

这几天接触到google.protobuf的东西,这类知识有欠缺,补一下。

序列化,将对象的状态信息转换为可以存储或传输的形式的过程,反之称为反序列化。

序列化的目的不是为了加密,而是为了跨平台传输!

序列化 和 反序列化主要用于解决在跨平台和跨语言的情况下,模块之间的交互调用,但其本质是为了解决数据传输的问题。

 

序列化,要有原始数据,通过某些方式,转换成另一种形式,目的是网络传输或磁盘拷贝。

平台或语言不同,某些数据类型占用的内存大小不一样。

 数据对齐

 

序列化整体过程:

发送端:原始数据 =》序列化(编码) =》特殊格式的字符串, 发送这个字符串

接收端:接收数据,将接收的数据进行反序列化(解码)=》原始数据,对原始数据进行处理

 

常用的序列化方式:

1. XML 类似于html

    <?xml version="1.0" encodeing="utf-8"?>

   <Library>

         <Type name="小说">

             。。。

         </Type>

   </Library>

标签自定义

 

2. Json  采集键值对的方式来描述对象。解析速度比较快,比xml快

    Json是一种数据格式,与平台语言无关

 

3. Protocl Buffer

 

4. ASN.1 抽象语法标记

5.boost 序列化的类。

 

posted on   努力建设我的管道!  阅读(143)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示