关于Cookie长度的思考
浏览:1171次 出处信息
问题
如何能使得一些信息可以存储更小?
分析
常见的存储方式:
key_len + key + value_len + value + …
优化方法
如果key是定长的,则: key_len 可以省略
如果对key编号,则,key可以更短
如果按顺序存储,则key_len 、key都可以省略
如果value是定长的,则value_len 可以省略; 延伸: 对于定长的value,省略value_len,非定常的value,不省略
如果顺序存储,对于空字段也要保留1个字节的value_len (value_len = 0),这里可以设计1个元字段,标识哪些字段为空(或非空),这样就不再需要1个字节的value_len 了
设置默认值; 对于出现次数频繁的value,设置为默认值,不做存储,而且,如果出现频繁的value为多个,则可以通过2bit的信息标明默认值为1、2、3; 不宜设置太多的默认值,那样就不会节省空间了
信息没有丢失,而是藏在了逻辑(或代码)当中
优化原理
建议继续学习:
- cookie窃取和session劫持 (阅读:12685)
- curl 命令使用cookie (阅读:8671)
- 前端开发中Cookie那些事儿 (阅读:6018)
- 如何设置一个永远无法删除的Cookie (阅读:5038)
- 在浏览器中加密Cookie (阅读:4342)
- 网站统计:第一方Cookie和第三方Cookie (阅读:4040)
- Cookie安全漫谈 (阅读:3388)
- 一段Javascript的代码 (阅读:3230)
- 使用Http-only Cookie来防止XSS攻击 (阅读:2944)
- FlashCookie (阅读:2816)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
后一篇:翻译文档:TokuMX的分形索引是什么? >>
文章信息
- 作者:phpor 来源: PHPor 的Blog
- 标签: Cookie
- 发布时间:2014-10-15 22:56:44
建议继续学习
近3天十大热文
- [687] Go Reflect 性能
- [24] 正态分布的前世今生(一)
- [15] Cuckoo Filter:设计与实现
- [15] rsync同步的艺术
- [13] 关于RDS只读实例延迟分析
- [13] Linux Used内存到底哪里去了?
- [13] 深入浅出选择类排序算法(简单选择排序,堆排序
- [12] 什么是DNS劫持和DNS污染?
- [11] vim入门,进阶与折腾
- [11] React 应用的架构模式 Flux