商城网站定制建设价位/网站推广的方式有哪些?
对于这个问题要从以下几个方面来回答
1. 对象传输:
之所以需要序列化,目的是为了解决网络通信之间的一个对象传输的问题,也就是说要怎么样把当前JVM进程里面的一个对象跨网络传输到另外一个JVM进程里面进行恢复,而序列化就是把内存里面的对象转化成为字节流,以便用来实现存储和传输;而反序列化就是根据从文件或者网络上获取到的一个对象的字节流根据字节流里面保存的对象描述信息和状态重新构建一个新的对象。
2. 可识别性
为了保证通信双方对于对象的可识别性,所以很多时候我们会把对象先转化为通用的解析格式,比如JSON、XML或者其他的格式,然后再转化为数据流进行网络传输,从而实现跨平台或者跨语言的这样一个可识别性
3. 序列化的选择
市面上开源的序列化技术很多,比如JSON、XML、Protobuf、kyro、hessian等,在实际应用中哪种序列化最合适,我觉得有几个关键因素
- 序列化后的数据大小:数据大小会影响传输性能
- 序列化的性能:序列化耗时较长会影响业务的性能
- 是否支持跨平台跨语言
- 技术的成熟度:越成熟的方案使用的公司越多,也就越稳定