序列化与压缩

序列化与压缩

1. 序列化的基本概念
2. 数据压缩的原理

3. 序列化与压缩
	a. 序列化的意义:
		i. 编写程序写文件A,另一个程序读取文件A
		ii. 进程通信时传输的数据
			1) 基本数据类型实例:int,long,double等数值
			2) 用户自定义类的实例:对象
		iii. 如何完成进程间的对象传送?
			1) 
				a) C c = new C(x,x,x);是在另外一个进程,调用class c 吗
				b) 然后class c是作为进程通信时传输的数据,进行序列化传到C c 所在的进程?
		
	b. 定义:
		i. 序列化:把对象状态按照一定的格式转换成有序字节流,以便在网络上传输或者保存在本地文件中 
		ii. 反序列化:从文件中或网络上获得序列化后的对象字节流后,根据字节流中所保存的对象状态及描述信息,重建对象
	
	c. 序列化:
		i. 数据需要序列化以后才能在服务端和客户端之间传输。
		ii. 这个服务端和客户端的概念是广义的,可以在网络上,也可以在同一台机器的不同进程中,甚至在同一个进程中进行通信。
		iii. 序列化协议:JSON、XML、Thrift、Protobuf…
		

	a. 压缩:通过一些有别于原始编码的特殊编码方式来保存数据,使数据占用的存储空间比较小
		i. 压缩可以减少网络传输时间,但是压缩和解压缩需要时间
	b. 解压缩:将被压缩的数据从特殊编码方式还原为原始数据的过程
		i. 解压需要时间
	c. 压缩算法的评价
		i. 时间:压缩速度、解压速度
		ii. 空间: 压缩比 = 压缩后所占空间/压缩前所占空间
		iii. 故 压缩时间要短、空间占比要小
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值