購物車實(shí)現(xiàn)的幾種方式優(yōu)缺點(diǎn)對(duì)比
購物車的話目前來說有三種,分別是存儲(chǔ)在cookie中或是session中,或是結(jié)合 數(shù)據(jù)庫存儲(chǔ)
第一種是存儲(chǔ)在cookie中
優(yōu)點(diǎn):
1.cookie是存儲(chǔ)在客戶端的,且占用很少的資源,一般cookie中可以存儲(chǔ)300個(gè)cookie,每個(gè)cookie為4KB,既可以滿足購物車的需求,還可以減輕服務(wù)器的壓力.
2.cookie是瀏覽器內(nèi)置,只要在cookie定義的有效期內(nèi),數(shù)據(jù)都不會(huì)丟失.
3.二區(qū)cookie不是可執(zhí)行文件,所以不會(huì)給用戶帶來病毒或攻擊用戶系統(tǒng)
缺點(diǎn):
1.基于cookie開發(fā)的購物車要求用戶瀏覽器必須支持并設(shè)置為啟用cookie,否則購物車則失效.
2.存在著關(guān)于cookie侵犯訪問者隱私的爭論,因此有些用戶會(huì)禁止本機(jī)cookie的功能.
3.如果換一臺(tái)機(jī)器在去登錄的話,就會(huì)丟失購物車信息;
第二種是session
優(yōu)點(diǎn):
1.session可以與客戶端保持同步,不依賴與客戶端的設(shè)置.
2.與cookie相比,session是存儲(chǔ)在服務(wù)器端的信息,因此比較安全;
缺點(diǎn):.
1.session會(huì)占用服務(wù)器資源,加大服務(wù)器的負(fù)載,尤其當(dāng)并發(fā)用戶很多時(shí),會(huì)生成大量的session,影響服務(wù)器的性能.
2.由于session存儲(chǔ)的信息更加敏感,而且是以文件形式保存在服務(wù)器中,所以也存在著安全隱患;
第三種是結(jié)合數(shù)據(jù)庫的方式
這種模式是目前比較普遍的.
它有一下特點(diǎn)
優(yōu)點(diǎn):
1.數(shù)據(jù)庫與cookie分別負(fù)責(zé)記錄數(shù)據(jù)和維持回話,能發(fā)揮各自的優(yōu)勢(shì),使安全性和服務(wù)器性能都得到了提高;
2.不論換到哪一個(gè)機(jī)器上,購物車信息都不丟失;
缺點(diǎn):
1.每個(gè)購物的行為 ,都要與數(shù)據(jù)庫進(jìn)行連接,直至對(duì)表的操作完成后,連接才釋放.當(dāng)并發(fā)用戶很多時(shí),會(huì)影響數(shù)據(jù)庫的性能 ,這時(shí)對(duì)數(shù)據(jù)庫的性能提出了更高的要求;
2.使用cookie維持回話,需要客戶端的支持.
相關(guān)文章
ThinkPHP3.2.1圖片驗(yàn)證碼實(shí)現(xiàn)方法
這篇文章主要介紹了ThinkPHP3.2.1圖片驗(yàn)證碼實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了thinkPHP3.2.1生成圖片驗(yàn)證碼過程中遇到的問題及相應(yīng)的解決方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2016-08-08
PHP實(shí)現(xiàn)賽郵SUBMAIL簡單易用短信通知實(shí)例
這篇文章主要介紹了使用PHP實(shí)現(xiàn)賽郵SUBMAIL的簡單易用短信通知實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10
Yii2框架實(shí)現(xiàn)登陸添加驗(yàn)證碼功能示例
這篇文章主要介紹了Yii2框架實(shí)現(xiàn)登陸添加驗(yàn)證碼功能,結(jié)合實(shí)例形式分析了Yii2框架登陸添加驗(yàn)證碼相關(guān)的設(shè)置、控制器及視圖操作技巧,需要的朋友可以參考下2018-07-07
讓codeigniter與swfupload整合的最佳解決方案
網(wǎng)上有很多關(guān)于ci與swfupload的帖子,不過,并不是很完整,所以,這里綜合各家優(yōu)點(diǎn),經(jīng)過自己實(shí)際經(jīng)驗(yàn),做了下整理,需要的朋友可以參考下2014-06-06
php之XML轉(zhuǎn)數(shù)組函數(shù)的詳解
本篇文章是對(duì)php中的XML轉(zhuǎn)數(shù)組函數(shù)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
PHP無限循環(huán)獲取MySQL中的數(shù)據(jù)實(shí)例代碼
最近公司有個(gè)需求需要從MySQL獲取數(shù)據(jù),然后在頁面上無線循環(huán)的翻頁展示.其實(shí)這個(gè)功能可以通過jq實(shí)現(xiàn),也可以通過php+mysql實(shí)現(xiàn),下面小編給大家分享基于PHP無限循環(huán)獲取MySQL中的數(shù)據(jù)實(shí)現(xiàn)方法,感興趣的朋友一起看看吧2017-08-08

