購物車對於電商網站來說是一個非常重要的模塊。最近自己的項目中也用到了,所以拿出來說說事!
購物車是用戶選擇商品的一個緩存的地方。其中包含了商品的基本信息,例如:商品的描述,商品的價格,商品的數量等等。
對於這個緩存而言,實現的方式是有很多種的,當然也是各有優劣,簡單說一下:
1.session:對話的時效性的問題,如果客戶選購商品的途中瀏覽器突然關閉,服務端找不到cookie中的sessionid了,那么選購的商品就不存在了
2.cookie:只要添加了就一直存在,只要不是手動的去清除或者expires為默認的過期時間。但是安全性無法保證,而且也無法對客戶的喜好進行定量的分析,有個數和長度的限制。
3.直接入數據庫:添加商品就反復的讀寫數據庫,硬件要求高,影響性能。數據持久存在
4.緩存數據庫:先暫存進入類似redis的緩存數據庫中,登錄后再寫入數據庫,但是對硬件有要求
再反觀各大電商網站,基本上分為三個流程:
一.例如淘寶,你瀏覽商品是可以的。但是如果你要添加商品到購物車的話就需要登錄;
二.例如京東,無論是未登錄還是登錄的用戶都可以使用將需要的商品添加入購物車內;
三.例如蘇寧,添加購物車只顯示商品個數,並不顯示相關的商品信息,這里就不做討論了。
如此看來,推 測淘寶的業務邏輯是比京東的要簡單的。因為登錄了話這些數據肯定就要入庫了,淘寶財大氣粗,技術精湛,數據全部入庫對於淘寶來說也不是什么很大的問題。而 且這些用戶的瀏覽數據還可以方便淘寶進行大數據的分析,對用戶進行商品的推送,乃至於若干年后給你來一個這十年喜愛商品的統計等等。而且只要你加了,除非 你自己去刪,要不然就等着你花錢來買!你怕不怕
具體怎么使用或者是結合使用就要看具體的場景和需求了,我們是選擇了使用cookie作為購物車商品緩存的介質。