关于Cookie长度的思考
浏览:1272次 出处信息
问题
如何能使得一些信息可以存储更小?
分析
常见的存储方式:
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劫持 (阅读:12892)
- curl 命令使用cookie (阅读:8754)
- 前端开发中Cookie那些事儿 (阅读:6162)
- 如何设置一个永远无法删除的Cookie (阅读:5218)
- 在浏览器中加密Cookie (阅读:4565)
- 网站统计:第一方Cookie和第三方Cookie (阅读:4102)
- Cookie安全漫谈 (阅读:3526)
- 一段Javascript的代码 (阅读:3318)
- 使用Http-only Cookie来防止XSS攻击 (阅读:3066)
- FlashCookie (阅读:2884)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
后一篇:翻译文档:TokuMX的分形索引是什么? >>
文章信息
- 作者:phpor 来源: PHPor 的Blog
- 标签: Cookie
- 发布时间:2014-10-15 22:56:44
建议继续学习
近3天十大热文
- [56] Oracle MTS模式下 进程地址与会话信
- [56] IOS安全–浅谈关于IOS加固的几种方法
- [55] 如何拿下简短的域名
- [54] android 开发入门
- [54] 图书馆的世界纪录
- [53] Go Reflect 性能
- [50] 【社会化设计】自我(self)部分――欢迎区
- [50] 读书笔记-壹百度:百度十年千倍的29条法则
- [39] 程序员技术练级攻略
- [33] 视觉调整-设计师 vs. 逻辑