我目前正在为我的网上商店的购物车编程,我想知道最好的解决方案是什么。
我目前有 5 个会话,其中包括用户为节省 sql 压力而添加的项目的数据。但是我刚刚读到使用会话对性能不利,并且服务器在达到最大值时会破坏会话(我不知道最大值是多少,我不希望数百名用户同时购买商品时间,只有少数)。
结论,每次用户访问购物车时,使用 5 个会话保存产品数据或使用查询获取产品的所有信息,哪个更好?
也欢迎任何其他建议!
我目前正在为我的网上商店的购物车编程,我想知道最好的解决方案是什么。
我目前有 5 个会话,其中包括用户为节省 sql 压力而添加的项目的数据。但是我刚刚读到使用会话对性能不利,并且服务器在达到最大值时会破坏会话(我不知道最大值是多少,我不希望数百名用户同时购买商品时间,只有少数)。
结论,每次用户访问购物车时,使用 5 个会话保存产品数据或使用查询获取产品的所有信息,哪个更好?
也欢迎任何其他建议!
我认为最好的方法是将购物车保存到数据库
因此,用户将拥有亚马逊上的永久图表。
您可以对每个购物车进行数据挖掘。
如果用户已登录,您可以使用用户 ID/密钥保存购物车
如果用户是匿名用户,您可以使用 cookie 来识别匿名用户
如果您不喜欢永久购物车,您可以在已保存的购物车上添加时间戳
会话在配置的超时后或用户关闭其浏览器或应用程序池回收时结束。
我将使用数据库查询缓存来保存产品信息而不是会话
无论如何,会话或缓存“压力”服务器内存,数据库查询压力 sql
无论如何,有人会感到压力。恕我直言,最好的方法是缓存 sql 响应,这样您就可以平衡内存和查询之间的压力
如果您只希望少数用户在任何时候从您的网上商店购买商品,那么保存到数据库应该没问题。
如果您担心数据库压力过大,可以将用户的临时购物车保存到 cookie 中。这使服务器不必担心会话——如果你需要它们,这将允许网络农场——并允许你利用客户的机器通过 JavaScript 处理基本的事情。