每日分享
Everybody comes to a point in their life when they want to quit, but it's what you do at that moment that determines who you are.
每个人想要退出,放弃的时候,他们就会到达生活中某阶段的一个临界点。但是正是这个临界点的选择,最终决定了你是谁。
小闫语录:
我们与很多成功的人相比,其实不差什么。差的就是临成功前的那一份坚持。失败不可怕,被人嘲笑也不可怕,可怕的是事过之后的后悔。请坚持你所坚持的,未来终将美好,加油!
商品部分储备知识
2.1数据库表设计
2.1.1SPU
SPU全称是 Standard Product Unit (标准产品单位)。它是商品信息聚合的最小单位。是一组可复用,易检索的标准化信息的集合,该集合描述了一个产品的特性。
简单的来讲就是属性值、特性相同的商品就可以被称为一个SPU。
例如iPhoneX,它指代的就是iPhoneX这一系列的手机,但是与商家、套餐之类的什么就都没有关系。好像我们去某东和某宝购物的时候,我们会输入我们想要的东西,然后系统会给我们推荐出好多在买此物品的商家信息等。
2.1.2SKU
SKU全称是Stock Keeping Unit (库存量单位),它是库存进出计量的单位。可以是以件、盒等为单位,是物理上不可分割的最小存货单元。在使用时要根据不同的业态,不同管理模式来处理。在服装、鞋类商品中使用最多最普遍。
针对电商而言,SKU是指一款商品,每款都有出现一个SKU,便于电商品牌识别商品;一款商品多色,则是有多个SKU,例:一件衣服,有红色、白色、蓝色,则SKU编码也不相同,如相同则会出现混淆,发错货。
还是拿iPhoneX来作为例子,iPhoneX全网通黑色256G就是一个SKU,表示了具体的规格、颜色等信息。
3.FastDFS分布式文件系统
3.1FastDFS简介
FastDFS是用c语言编写的一款开源的分布式文件系统。FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群,提供文件上传下载等服务。
FastDFS 架构包括 Tracker server 和 Storage server。客户端请求 Tracker server 进行文 件上传、下载,通过 Tracker server 调度最终由 Storage server 完成文件上传和下载。
Tracker server 作用是负载均衡和调度,通过 Tracker server 在文件上传时可以根据一些 策略找到 Storage server 提供文件上传服务。可以将 tracker 称为追踪服务器或调度服务器。
Storage server 作用是文件存储,客户端上传的文件最终存储在 Storage 服务器上, Storageserver 没有实现自己的文件系统而是利用操作系统 的文件系统来管理文件。可以将 storage 称为存储服务器。
服务器端的两个角色:
1.Tracker:管理集群,tracker也可以实现集群。每个tracker节点地位平等。收集storage集群的状态。
2.storage:实际保存文件,storage分为多个组,每个组之间保存的文件是不同的。每个组内部可以有多个成员,组成员内部保存的内容是一样的,组成员的地位是一致的,没有主从的概念。
3.2文件上传流程
1.tracker server定时向tracker上传状态信息;
2.客户端向tracker上传连接请求;
3.tracker server查询可用的storage;
4.tracker server返回信息(storage的ip和port)给客户端;
5.上传文件(file content和metadata);client---->storage server
6.storage server生成file_id;
7.storage server将上传内容写入磁盘;
8.storage server返回file_id(路径信息和文件名);
9。客户端存储文件信息。
客户端上传文件后存储服务器将文件 ID 返回给客户端,此文件 ID 用于以后访问该文 件的索引信息。文件索引信息包括:组名,虚拟磁盘路径,数据两级目录,文件名。
group1/MOO/02/44/wKgDrE34E8wAAAAAAAAAGkWIYJK42378.sh
组名:文件上传后台所在的storage组名称,在文件上传成功后由storage服务器返回,需要客户端自行保存。
虚拟磁盘路径:storage配置的虚拟路径,与磁盘选项storepath*对应,如果配置了storepath0则是M00,如果是配置了store_path1则是M01。以此类推。
数据两级目录:storage服务器在每个虚拟磁盘路径下创建的两级目录,用于存储数据文件。
文件名:与文件上传时不同。是由存储服务器根据特定信息生成,文件名包含:源存储服务器IP地址、文件创建时间戳、文件大小、随机数核文件扩展名等信息。
简易FastDFS构建