IT技术博客大学习 共学习 共进步

关于Cookie长度的思考

PHPor 的Blog 2014-10-15 22:56:44 浏览 1,883 次

问题

如何能使得一些信息可以存储更小?

分析

   常见的存储方式:

   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; 不宜设置太多的默认值,那样就不会节省空间了

  • 优化原理

  • 信息没有丢失,而是藏在了逻辑(或代码)当中

建议继续学习

  1. cookie窃取和session劫持 (阅读 14,425)
  2. curl 命令使用cookie (阅读 9,844)
  3. 前端开发中Cookie那些事儿 (阅读 7,207)
  4. 如何设置一个永远无法删除的Cookie (阅读 6,263)
  5. 在浏览器中加密Cookie (阅读 5,384)
  6. 网站统计:第一方Cookie和第三方Cookie (阅读 4,963)
  7. Cookie安全漫谈 (阅读 4,541)
  8. 一段Javascript的代码 (阅读 4,181)
  9. 使用Http-only Cookie来防止XSS攻击 (阅读 3,901)
  10. js制作提示公告带关闭可保存cookie (阅读 3,843)