无标题文章

1、序列化和反序列化,为什么需要这个技术,解决什么问题

序列化是将数据转换成二进制串的过程,反序列化是将二进制串转换成数据的过程;应用场景是网络传输和数据持久化,当然大部分情况我们考虑网络传输,如:rpc,client-server。

实际应用中,如微信消息,客户端基于SDK和序列化协议来解析服务端数据,序列化协议好的话,应该既要保证消息的安全性又要保证数据的压缩比(省流量)。

常见的序列化协议有:json、xm、protobufl、java默认的序列化Serializable。

有人理解它属于tcp层的理论,我不认为这属于通信协议的范畴,虽然我也不是很懂。。。

2、对象的拷贝,除了实现cloneable接口还可以怎么做?

还可以一层一层的new;

还可以“序列化—反序列化”;

3、B+Tree索引的区间访问原理

B+Tree给每个叶子节点增加了一个指向相邻叶子节点的指针,做这个优化的目的是为了提高区间访问的性能。如上图,如果要查询18到49的所有记录,当找到18后,只需顺着节点和指针顺序遍历就可以一次性访问到所有数据节点,极大的提到了区间查询效率。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 【2017年最新】☞ iOS面试题及答案 设计模式是什么? 你知道哪些设计模式,并简要叙述? 设计模式是一种编码经...
    紫色冰雨阅读 628评论 0 1
  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 1,841评论 0 9
  • MVC 具有什么样的优势,各个模块之间怎么通信,比如点击 Button 后 怎么通知 Model?[iOS] MV...
    Lost_693d阅读 161评论 0 1
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,275评论 0 4
  • 【茫茫人海,你我相遇】 文/待夕而归 上一章 前言 ↓↓↓ 兴昌路旁的一家西装店,挂满了各式各样的西服,这些...
    待夕而归阅读 706评论 1 1