序列化和反序列化的解释

1. 定义

后端服务都是基于微服务架构实现的。服务按照业务划分被拆分,实现了服务的解耦,但同时也带来了新的问题,不同业务之间通信需要通过接口实现调用。

两个服务之间要共享一个数据对象,就需要从对象转换成二进制流,通过网络传输,传送到对方服务,再转换回对象,供服务方法调用。这个编码和解码过程我们称之为序列化与反序列化

2. 衡量序列化框架好坏的标准

序列化的速度

序列化后的传输数据体积

3. Java 序列化的缺陷

无法跨语言, 如果是两个基于不同语言编写的应用程序相互通信,则无法实现两个应用服务之间传输对象的序列化与反序列化, C++ 写游戏服务,Java/Go 写周边服务,Python 写一些监控应用。
易被攻击
序列化后的流太大, Java 序列化中的编码耗时要比 ByteBuffer 长很多。

相关推荐
咕德猫宁丶23 分钟前
Spring Boot 邂逅Netty:构建高性能网络应用的奇妙之旅
java·spring boot·后端
C++小厨神28 分钟前
C#语言的函数实现
开发语言·后端·golang
计算机-秋大田1 小时前
基于JAVA的微信点餐小程序设计与实现(LW+源码+讲解)
java·开发语言·后端·微信·小程序·课程设计
安的列斯凯奇7 小时前
SpringBoot篇 单元测试 理论篇
spring boot·后端·单元测试
架构文摘JGWZ8 小时前
FastJson很快,有什么用?
后端·学习
BinaryBardC8 小时前
Swift语言的网络编程
开发语言·后端·golang
邓熙榆8 小时前
Haskell语言的正则表达式
开发语言·后端·golang
专职11 小时前
spring boot中实现手动分页
java·spring boot·后端
Ciderw11 小时前
Go中的三种锁
开发语言·c++·后端·golang·互斥锁·
m0_7482463512 小时前
SpringBoot返回文件让前端下载的几种方式
前端·spring boot·后端