欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

javascript - 京东上的购物车问题

程序员文章站 2022-05-24 21:46:33
...
京东上的购物车是放在SESSION里的,他那个SESSION存放在时间是比较长的,长达几个月,如果有10万人的购物车里有信息,那么京东服务器上的SESSION目录的SESSION信息文件岂不是很多??他们会不会根据用户ID来划分目录,避免某个目录下的文件过多呢??

回复内容:

京东上的购物车是放在SESSION里的,他那个SESSION存放在时间是比较长的,长达几个月,如果有10万人的购物车里有信息,那么京东服务器上的SESSION目录的SESSION信息文件岂不是很多??他们会不会根据用户ID来划分目录,避免某个目录下的文件过多呢??

PHP Session 存储方式为临时文件,这只是默认的。
事实上绝大多数初具规模的站点都修改了存储方式,原因就是你讲到的避免出现令人意外的系统开销。Session 文件过万之后,会对系统造成负担,首先表现就是 web server 负荷增高,硬盘 io 增大,直至停止响应。可以用数据库、内存表、缓存随便什么,资料许多你自己找吧。

电商网站(京东和淘宝是这样)的购物车,未登录状态关联的是你的 session(用客户端 cookie 识别你),登陆后立刻移至你的账号下,这里不是 $session['product'] = []; 这么简单,还做了挺多针对用户的处理。而且鉴于运营需要,别说是几个月,可能是过去几年你加入购物车的、你浏览过的都在他们的日志系统里,只不过不给你看,转化成数据帮它们做决策了。

开发app、除了静态文件,最好不要涉及到文件存储,慢,事多。