文章目录

  • 1.概述
  • 2.Flink通信层的序列化
  • 3.Flink 序列化过程

1.概述

当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传送。发送方需要把这个Java对象转换为字节序列,才能在网络上传送;接收方则需要把字节序列再恢复为Java对象。

  1. 把Java对象转换为字节序列的过程称为对象的序列化。
  2. 把字节序列恢复为Java对象的过程称为对象的反序列化。

对象的序列化主要有两种用途:

  1. 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中;
  2. 在网络上传送对象的字节序列。

序列化的好处:减少数据在内存、硬盘中的占用空间,减少网络传输开销,精确推算内存使用情况,降低GC频率

大多数情况下,用户不用担心flink的序列化框架,flink可以自己推断出数据的类型信息,不能推

95-268-280-源码-Flink通信层的序列化与反序列化相关推荐

  1. Android源码分析 - Framework层的Binder(客户端篇)

    开篇 本篇以aosp分支android-11.0.0_r25作为基础解析 我们在之前的文章中,从驱动层面分析了Binder是怎样工作的,但Binder驱动只涉及传输部分,待传输对象是怎么产生的呢,这就 ...

  2. [Android] Handler源码解析 (Java层)

    之前写过一篇文章,概述了Android应用程序消息处理机制.本文在此文基础上,在源码级别上展开进行概述 简单用例 Handler的使用方法如下所示: Handler myHandler = new H ...

  3. Handler 源码解析(Java 层)

    本文由船员 ChangeHui  自荐,转载发布 从很早开始就认识到 Handler 了,只不过那时修为尚浅,了解的不够深刻,也没有应用自如.不过随着工作时间的增长,对 Handler 又有了更深层次 ...

  4. Handler源码分析 - Java层

    Handler最常见的使用场景就是下载回调,为了不影响用户体验Android不支持在主线程中进行耗时时操作,长时间的耗时操作会产生ANR异常,而下载无疑是耗时操作,所以我们会在子线程中进行下载.但,下 ...

  5. dubbo源码解析-逻辑层设计之服务降级

    Dubbo源码解析系列文章均来自肥朝简书 前言 在dubbo服务暴露系列完结之后,按计划来说是应该要开启dubbo服务引用的讲解.但是现在到了年尾,一些朋友也和我谈起了明年跳槽的事.跳槽这件事,无非也 ...

  6. linux网络协议栈源码分析 - 传输层(TCP连接的建立)

    1.bind系统调用 1.1.地址端口及状态检查(inet_bind) 通过路由表查找绑定地址的路由类型,对于非本地IP检查是否允许绑定非本地IP地址:检查公认端口绑定权限,是否允许绑定0~1024端 ...

  7. djangorestframework源码分析2:serializer序列化数据的执行流程

    djangorestframework源码分析 本文环境python3.5.2,djangorestframework (3.5.1)系列 djangorestframework源码分析-serial ...

  8. 【protobuf源码探秘】编码、序列化

    文章目录 为什么要写这篇? 编码 编码结构 Varints 编码 负数的 Varints 编码情况 ZigZag 编码 bool fixed族 不定长数据类型 repeat repeated stri ...

  9. caffe源码解析—image_data_layer层

    caffe data layer相关层的继承结构 image-data-layer层关键代码注释 DataLayerSetUp函数 //将imagelist中的图片以 image+label格式 读入 ...

最新文章

  1. 硬盘温度70度正常吗_70多岁老年人原来血压160,现在130正常吗?医生为你分析实情...
  2. 数据库之Schema设计
  3. java thread join_java中thread的join方法为什么能让线程插队
  4. docker mysql容器 修改时区
  5. opencv简单滤波
  6. SpringBoot+AntV实现一次前后端交互渲染多个饼状图
  7. 项目正式环境是双机,对外的访问地址是虚拟地址,在登录门户的时候,会等待15秒,才能进入门户...
  8. 错误笔记:在OleDb执行下Access ,程序不报错,但是Update也更新不成功的
  9. js中两种定时器,setTimeout和setInterval的区别
  10. 单招考试计算机专业大概分数线是多少,单招分数线一般多少?
  11. while循环中使用read读取变量的一点小技巧
  12. BottomBar之Android底部菜单
  13. 王方月 - 《君王2》与cocos2d-x的邂逅
  14. Shiro实现登录功能
  15. 初识数据分析利器SPSS
  16. 三星mega2 android os,三星G7508Q (Galaxy Mega 2 双4G)一键救砖教程,轻松刷回官方系统...
  17. udl 连mysql_几种常见的数据库连接方法
  18. 机动车尾气污染物分析仪的原理
  19. vue-devtools\shells\chrome 错误 无法为内容脚本加载 JavaScript“build/hook.js”。 无法加载清单。
  20. ROS环境下大疆tello无人机源码安装驱动代码解读

热门文章

  1. 屏幕持续升级!一加8斩获DisplayMate A+评级
  2. 经典滑盖全面屏手机大降价!荣耀Magic2到手1799元
  3. 小度回应天猫精灵:不要因为我们拿了第一就黑我们
  4. 2000元档855旗舰来了 网友:都过时了,哪有人买
  5. 这款App被端了!曾是蔡徐坤一亿微博转发量的幕后推手 半年吸金800万
  6. “iQOO”怎么读?vivo官宣“发音”视频
  7. UNIX网络编程——基本TCP套接字编程 【转贴】
  8. 十大笔记本品牌型号命名规则【惠普】
  9. 如何保证http传输安全性
  10. c如何接收java指令_java指令和javac指令总结