购物车实现的几种方式优缺点对比


Posted in PHP onMay 02, 2018

购物车的话目前来说有三种,分别是存储在cookie中或是session中,或是结合 数据库存储

第一种是存储在cookie中

优点:

     1.cookie是存储在客户端的,且占用很少的资源,一般cookie中可以存储300个cookie,每个cookie为4KB,既可以满足购物车的需求,还可以减轻服务器的压力.

   2.cookie是浏览器内置,只要在cookie定义的有效期内,数据都不会丢失.

   3.二区cookie不是可执行文件,所以不会给用户带来病毒或攻击用户系统

缺点:

  1.基于cookie开发的购物车要求用户浏览器必须支持并设置为启用cookie,否则购物车则失效.
  2.存在着关于cookie侵犯访问者隐私的争论,因此有些用户会禁止本机cookie的功能.
   

     3.如果换一台机器在去登录的话,就会丢失购物车信息;

第二种是session

优点:

  1.session可以与客户端保持同步,不依赖与客户端的设置.
  2.与cookie相比,session是存储在服务器端的信息,因此比较安全;

缺点:.

  1.session会占用服务器资源,加大服务器的负载,尤其当并发用户很多时,会生成大量的session,影响服务器的性能.
  2.由于session存储的信息更加敏感,而且是以文件形式保存在服务器中,所以也存在着安全隐患;

 第三种是结合数据库的方式

   这种模式是目前比较普遍的.
 

 它有一下特点

优点:

                    1.数据库与cookie分别负责记录数据和维持回话,能发挥各自的优势,使安全性和服务器性能都得到了提高;
                    2.不论换到哪一个机器上,购物车信息都不丢失;

缺点:

  1.每个购物的行为 ,都要与数据库进行连接,直至对表的操作完成后,连接才释放.当并发用户很多时,会影响数据库的性能 ,这时对数据库的性能提出了更高的要求;
         2.使用cookie维持回话,需要客户端的支持.

PHP 相关文章推荐
php设计模式 Visitor 访问者模式
Jun 28 PHP
header中Content-Disposition的作用与使用方法
Jun 13 PHP
php自定义的格式化时间示例代码
Dec 05 PHP
php之Smarty模板使用方法示例详解
Jul 08 PHP
php中get_defined_constants函数用法实例分析
May 12 PHP
PHP实现过滤各种HTML标签
May 17 PHP
php使用ftp实现文件上传与下载功能
Jul 21 PHP
laravel5.4生成验证码的实例讲解
Aug 05 PHP
PHP-X系列教程之内置函数的使用示例
Oct 16 PHP
Laravel关系模型指定条件查询方法
Oct 10 PHP
Laravel 错误提示本地化的实现
Oct 22 PHP
php 获取音视频时长,PHP 利用getid3 获取音频文件时长等数据
Apr 01 PHP
PHP生成(支持多模板)二维码海报代码
Apr 30 #PHP
PHP实现的猴王算法(猴子选大王)示例
Apr 30 #PHP
PHP+MySQL高并发加锁事务处理问题解决方法
Apr 30 #PHP
PHP使用file_get_contents发送http请求功能简单示例
Apr 29 #PHP
PHP实现通过strace定位故障原因的方法
Apr 29 #PHP
PHP性能测试工具xhprof安装与使用方法详解
Apr 29 #PHP
PHP使用curl_multi实现并发请求的方法示例
Apr 29 #PHP
You might like
php 文件夹删除、php清除缓存程序
2009/08/25 PHP
PHP中开发XML应用程序之基础篇 添加节点 删除节点 查询节点 查询节
2010/07/09 PHP
在smarty模板中使用PHP函数的方法
2011/04/23 PHP
PHP与MYSQL中UTF8 中文排序示例代码
2014/10/23 PHP
详解WordPress开发中wp_title()函数的用法
2016/01/07 PHP
php生出随机字符串
2017/07/06 PHP
php实现生成PDF文件的方法示例【基于FPDF类库】
2018/07/21 PHP
浅析php如何实现爬取数据原理
2018/09/27 PHP
PHP命名空间(namespace)原理与用法详解
2019/12/11 PHP
Moment.js 不容错过的超棒Javascript日期处理类库
2012/04/15 Javascript
jquery默认校验规则整理
2014/03/24 Javascript
jquery实现点击文字可编辑并修改保存至数据库
2014/04/15 Javascript
JS实现的生成随机数的4个函数分享
2015/02/11 Javascript
JS实现表格数据各种搜索功能的方法
2015/03/03 Javascript
Javascript之String对象详解
2016/06/08 Javascript
利用React-router+Webpack快速构建react程序
2016/10/27 Javascript
javascript中json基础知识详解
2017/01/19 Javascript
JavaScript防止全局变量污染的方法总结
2018/08/02 Javascript
详解react-refetch的使用小例子
2019/02/15 Javascript
微信小程序设置滚动条过程详解
2019/07/25 Javascript
JavaScript面试中常考的字符串操作方法大全(包含ES6)
2020/05/10 Javascript
Python统计日志中每个IP出现次数的方法
2015/07/06 Python
python中利用Future对象异步返回结果示例代码
2017/09/07 Python
python中文分词教程之前向最大正向匹配算法详解
2017/11/02 Python
让Django支持Sql Server作后端数据库的方法
2018/05/29 Python
python第三方库学习笔记
2020/02/07 Python
基于HTML5超酷摄像头(HTML5 webcam)拍照功能实现代码
2012/12/13 HTML / CSS
ECCO爱步官方旗舰店:丹麦鞋履品牌
2018/01/02 全球购物
Otticanet澳大利亚:最顶尖的世界名牌眼镜, 能得到打折季的价格
2018/08/23 全球购物
金融专业个人求职信范文
2013/11/28 职场文书
个人求职简历中英文自我评价
2013/12/16 职场文书
单位门卫岗位职责
2013/12/20 职场文书
事假请假条范文
2014/04/11 职场文书
世博会口号
2014/06/20 职场文书
工作简历自我评价
2015/03/11 职场文书
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
2022/04/14 Python