热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[产品设计]电商设计知乎总结-陶士涵

[产品设计]电商设计知乎总结-陶士涵

想做一个B2B2C的电商平台,在后台数据统计搭建的时候需要注意哪些问题?如何设计具体的统计模块?

王于萍:

我认为在建数据库前,需要设计好的,是需求和流程,有了这一步的需求,你就知道了在这里你需要什么数据;有了流程,你就知道了你能得到什么数据,甚至于数据类型。

比如供应商管理,你会得到供应商的公司地区、电话、类目等,在数据统计中,你可以对地区、类目统计,再根据C的对应需求推荐等

PalmWong

建议先从业务理解开始:

BBC平台,首先分成三个后台

商家门户+平台运营门户+买家个人门户

要做统计的部分同样是三块:

1、消费者个人视角出发:个人的消费统计

2、平台运营的视角出发:整个平台的运营情况统计,针对商家的运营情况统计

3、商家视角出发的统计

BBC商城其实是非常复杂的业务系统,因为角色和功能的变化,导致其中数据交互其实非常多。且对账、统计、权限管理异常情况很多。

不是看着天猫的模式,就闭着眼睛可以做的。

PHP+MySql 架构用户数和访问量为千万级别的类似淘宝商城那样的 B2C 网站,如何?

Dion

系统架构很重要!

语言:

主流语言都没什么问题。PHPJava什么的都行。

前端服务器:

如果有条件CDN,最好。没有的话,一定要保证前端的负载性能。一般推荐Nginx

应用服务器:

集群呗。前端负责负载均衡。集群的话,Session的问题注意下就行。别的没什么。

数据存储:

如果数据量比较大的话(百万级),用MySQL + Memcached做集群没问题。

如果数据量再大的话,考虑NoSQL吧。比如FacebookCassandraAmazonDynamo

socici

你可以简单点,从用户访问的数据角度看

静态文件,包括图片、HTM JScss 这些不经常变的数据。 单独给个域 http://static.xxxx.com nginx管理

通过前后台发布的动态数据,分以下几种:

读的数据:

1.需要用户查询的大数据,如订单之类的,可以去查slaver的数据库

2.系统公共页面显示的数据,如部分商品信息、排行榜之类的可以去缓存里取

写的数据:

要求即时生效的,如修改用户信息,直接同步写到master数据库

即时要求不高或者有并发限制的,如发微博、发私信之类的 先写到队列,异步读取保存到数据库

电商平台中商品规格设计的问题,抛出,求吐槽?

商品表(商品名称、价格、上下架等一些商品基本的信息)

例如:1 手机、100

规格表(主键、商品ID、规格名称

例如:1 1、运营商

商品规格值表(主键、规格ID、商品ID、规格值ID、规格值NAME

例如:1110、电信版

2111、移动版

规格库存表(商品ID、规格值ID组合、规格值NAME组合、库存量、价格)

例如:11/0(运营商、电信版)、运营商/电信版、100个、100

问题描述:

以上方式可实现多规格多库存但是采用一种约定的规格顺序,感觉在编写程序时,系统在后期统计不同规格相关的数据就会很痛苦。

并且在实现商品创建时,要先把商品创建好后,才能创建规格,个人参考一些大的电商平台方式,发现都是一个提交完成商品创建。

需要的帮助:

需要结合我的问题描述,给一个合理的商品多规格、多价格、多库存的设计方案,来解决我编程上的复杂度,同时保证我可以在商品创建的交互设计中简单。

socici

商品分类 (类型id,类型名称,父ID

商品表(商品名称、价格、上下架等一些商品基本的信息、商品分类)

规格表(主键、规格名称

规格值表(规格值ID、规格id、规则值类型、规格默认值)

规格-分类关联表(商品分类id,规格id)

商品-规格关联表(商品id,规格id,规格值ID,规格实际值)

库存表(商品id,数量,价格)

类似淘宝关于产品详情页的数据库存储是怎么存储的呢?

1,每个产品的 图片数和介绍的段落数都是不固定的,是采用编辑器编辑好之后生成html整个存储到数据库么?不现实吧?

2. 要是以数据库字段存储到话,每个产品的 图片数和介绍的段落数是不固定的,就算设置一个上限,那也会浪费很多字段啊

3.在查询的时候,如果图片和介绍文字是分开存储的,那么在查询之后页面展示的时候是怎么 将某一图片和关于介绍他的问题相匹配的呢

刘传双:

总体来说

1、商品的结构化信息保存在数据库,名称、价格、库存、属性等,当然不是简单的一张表。

2、商品的非结构化信息保存成小文件,存储在自主开发的海量小文件系统中,图片和商品描述信息。

3、商品的图片文件id需要存储在数据库或者其他类型的存储的,不一定非要多个字段,这是水平方式,一般把商品的一个图片存储为一条记录,纵向扩展。

4、文档在存储之前,先保存图片,并把文档中的图片src地址替换为小文件系统中的图片路径,就可以了

补充一句,不能把存储理解成只有数据库和文件系统,存储有各种类型的,不同的文件系统、各种RDBMSNoSql存储……

子柳:

其实几位同事已经回答了,我再从历史的角度做个补充

最早这个字段确实是放在数据库里面的,是一个clob字段,存放的就是html的片段。而且当时这个字段跟商品的标题、价格、卖家ID等等是在一个表里面的,性能会受到多大影响是可以想象的。

所以这种方式是注定长久不了的,我在2005年,把这个字段单独分离出来一张表来存放了,这没多少技术含量,当时却给数据库减轻了很大压力,DBA们很感谢我。

2006年以后,淘宝开始大规模的采用缓存,这个字段也放进了缓存里面,于是这又给数据库减轻了很大压力(只有不在缓存里的数据,才去数据库里面读取,读出来就放入缓存了)。

到了2007年,淘宝开发了分布式文件存储系统TFS,于是就彻底的把这个字段请出了数据库,一同请出的还有交易快照这样的大字段信息。


推荐阅读
  • 构建LNMP架构平台
    LNMP架构的组成:Linux、Nginx、MySQL、PHP关于NginxNginx与apache的作用一样,都是为了搭建网站服务器,由俄罗斯人lgorsysoev开发,其特点是 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
  • LVS实现负载均衡的原理LVS负载均衡负载均衡集群是LoadBalance集群。是一种将网络上的访问流量分布于各个节点,以降低服务器压力,更好的向客户端 ... [详细]
  • 目录浏览漏洞与目录遍历漏洞的危害及修复方法
    本文讨论了目录浏览漏洞与目录遍历漏洞的危害,包括网站结构暴露、隐秘文件访问等。同时介绍了检测方法,如使用漏洞扫描器和搜索关键词。最后提供了针对常见中间件的修复方式,包括关闭目录浏览功能。对于保护网站安全具有一定的参考价值。 ... [详细]
  • 负载均衡_Nginx反向代理动静分离负载均衡及rewrite隐藏路径详解(Nginx Apache MySQL Redis)–第二部分
    nginx反向代理、动静分离、负载均衡及rewrite隐藏路径详解 ... [详细]
  • Linux下部署Symfoy2对app/cache和app/logs目录的权限设置,symfoy2logs
    php教程|php手册xml文件php教程-php手册Linux下部署Symfoy2对appcache和applogs目录的权限设置,symfoy2logs黑色记事本源码,vsco ... [详细]
  • Nginx Buffer 机制引发的下载故障
    Nginx ... [详细]
  • [翻译]微服务设计模式5. 服务发现服务端服务发现
    服务之间需要互相调用,在单体架构中,服务之间的互相调用直接通过编程语言层面的方法调用就搞定了。在传统的分布式应用的部署中,服务地 ... [详细]
  • Linux一键安装web环境全攻略
    摘自阿里云服务器官网,此处一键安装包下载:点此下载安装须知1、此安装包可在阿里云所有Linux系统上部署安装,此安装包包含的软件及版本为& ... [详细]
  • Hadoop源码解析1Hadoop工程包架构解析
    1 Hadoop中各工程包依赖简述   Google的核心竞争技术是它的计算平台。Google的大牛们用了下面5篇文章,介绍了它们的计算设施。   GoogleCluster:ht ... [详细]
  • OAuth2.0指南
    引言OAuth2.0是一种应用之间彼此访问数据的开源授权协议。比如,一个游戏应用可以访问Facebook的用户数据,或者一个基于地理的应用可以访问Foursquare的用户数据等。 ... [详细]
  • 解决VS写C#项目导入MySQL数据源报错“You have a usable connection already”问题的正确方法
    本文介绍了在VS写C#项目导入MySQL数据源时出现报错“You have a usable connection already”的问题,并给出了正确的解决方法。详细描述了问题的出现情况和报错信息,并提供了解决该问题的步骤和注意事项。 ... [详细]
  • 本文介绍了在无法联网的情况下,通过下载rpm包离线安装zip和unzip的方法。详细介绍了如何搜索并下载合适的rpm包,以及如何使用rpm命令进行安装。 ... [详细]
  • nginx+多个tomcat
    学习nginx的时候遇到的问题:nginx怎么部署两台tomcat?upstream在网上找的资源,我在nginx配置文件(nginx.conf)中添加了两个server。结果只显 ... [详细]
author-avatar
洗吉精洗白菜_773
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有