Php 站点优化-使用cookie还是使用我们的数据库?

Php 站点优化-使用cookie还是使用我们的数据库?,php,optimization,cookies,Php,Optimization,Cookies,我在网上读到(关于谷歌自己的网站优化技术的建议),使用cookie最好保持在最低限度——cookie越少(以及它们拥有的内容越少),越好,因为对该域下页面的每个HTTP请求也会将cookie内容与该请求一起传输 我们的客户要求允许访问产品列表页面上的“保存搜索”。例如,对于鞋子,我可以过滤“黑色鞋子”并保存搜索。然后我可以将黑皮鞋过滤成“皮革”,这样我就可以得到“黑皮鞋”的过滤结果,我也应该能够保存搜索结果。 因此,保存的搜索项包括3个属性:搜索名称(由访问者输入)、要保存的当前URL以及关于该

我在网上读到(关于谷歌自己的网站优化技术的建议),使用cookie最好保持在最低限度——cookie越少(以及它们拥有的内容越少),越好,因为对该域下页面的每个HTTP请求也会将cookie内容与该请求一起传输

我们的客户要求允许访问产品列表页面上的“保存搜索”。例如,对于鞋子,我可以过滤“黑色鞋子”并保存搜索。然后我可以将黑皮鞋过滤成“皮革”,这样我就可以得到“黑皮鞋”的过滤结果,我也应该能够保存搜索结果。 因此,保存的搜索项包括3个属性:搜索名称(由访问者输入)、要保存的当前URL以及关于该页面的其他进一步描述信息(取自该页面)

由于访问者可以存储无限的搜索,我计划使用一个数组并对其进行序列化/base64_编码,使其成为一个字符串,当需要检索/显示它时,我可以对其进行解码

如果我将其存储在一个cookie中,并且访问者保存了5次搜索,那么cookie中有很多文本。你将如何建造这个?目前,我可以看到两种选择:

1) 坚持上面的方法,只使用cookie。为此,请您: a) 上面的serialize/base64_编码吗? 或 b) 您会将多维数组“内爆”为字符串吗

2) 您是否将所有这些信息存储在数据库中,比如将上述序列化字符串存储在数据库中,然后(从数据库)为该客户分配一个唯一的ID,并将该ID存储在cookie中。这样,cookie只是一个数字,我们从数据库中检索其余部分。您会将其归类为更好的站点速度“优化”形式吗


非常感谢

毫无疑问,将数据存储在数据库中,然后将唯一保存的ID放入cookie中

除了通过减少HTTP请求数据来加快页面速度外,您还可以在数据库中存储无限量的数据,而cookie只能存储大约4K的数据

您还将获得一个额外的好处,即如果只有一个ID,用户就不能篡改cookie数据。

您考虑过使用吗?