HTML – 我可以/应该创建一个多大的cookie?

前端之家收集整理的这篇文章主要介绍了HTML – 我可以/应该创建一个多大的cookie?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
用户登录我们的站点时,我们从数据库中检索一个对象,该对象包含整个站点中使用的各种设置.为了减少每次用户与我们网站交互时返回数据库的服务器负载,我们都在考虑其他方法. (我们在需要时对对象进行序列化和反序列化).该对象可能<1MB但可能会有所不同.
>在没有显着影响性能的情况下,我们可以在会话中拥有多大的对象?
>我们可以在cookie中存储多大的对象?
>还有其他选择(除了从我们的数据库中检索数据)吗?

解决方法

允许的最大cookie大小取决于客户端.例如,2005年的 MSDN article表示整个cookie可能至少有4096个字节可用(包括到期日期等).同一篇文章中提到的 RFC包含有关限制的更多信息:

6.3 Implementation Limits

Practical user agent implementations have limits on the number and
size of cookies that they can store. In general,user agents’ cookie
support should have no fixed limits. They should strive to store as
many frequently-used cookies as possible. Furthermore,general-use
user agents should provide each of the following minimum capabilities
individually,although not necessarily simultaneously:

  • at least 300 cookies

  • at least 4096 bytes per cookie (as measured by the size of the
    characters that comprise the cookie non-terminal in the Syntax
    description of the Set-Cookie header)

  • at least 20 cookies per unique host or domain name

如果您的会话数据没有价值(例如“在重启时不应该丢失”),请考虑将其存储在memcached中.这非常快,并且只是为了获取会话数据而避免访问数据库.您可能实际上想要考虑使用两者的混合:您可以创建一个包含会话ID和登录信息的小cookie.然后丢失服务器端会话不会导致用户退出,因此影响会非常小.

猜你在找的HTML相关文章