logo资料库

fastdfs文件上传服务器+商品的增删改查.pdf

第1页 / 共20页
第2页 / 共20页
第3页 / 共20页
第4页 / 共20页
第5页 / 共20页
第6页 / 共20页
第7页 / 共20页
第8页 / 共20页
资料共20页,剩余部分请下载后查看
1.商品分类的增删改
2.新增商品
3.FastDFS理论部分
3.1.简介
3.2.上传交互过程
3.3.下载交互过程
4.搭建FastDFS文件上传服务器
5.实现商品新增中的图片列表:
5.1.后台代码:
5.1.1.Pom.xml
5.1.2.配置文件
5.1.3.DfsConfig
5.1.4.FileDfsUtils工具类
5.1.5.UploadController
5.2.前端:
1. 商品分类的增删改 2. 新增商品 3.FastDFS 理论部分 3.1. 简介 FastDFS 是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、 文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特 别适合以文件为载体的在线服务,如相册网站、视频网站等等。 FastDFS 为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重 高可用、高性能等指标,使用 FastDFS 很容易搭建一套高性能的文件服务器集群提供文件 上传、下载等服务。 3.2. 上传交互过程 编辑 1. client 询问 tracker 上传到的 storage,不需要附加参数; 2. tracker 返回一台可用的 storage; 3. client 直接和 storage 通讯完成文件上传。 group1/M00/00/00/rBUAD18VNwmAb3kQAA1rIuRd3Es623.jpg 客户端上传文件后存储服务器将文件 ID 返回给客户端,此文件 ID 用于以后访问该文 件的索引信息。文件索引信息包括:组名,虚拟磁盘路径,数据两级目录,文件名。 组名:文件上传后所在的 storage 组名称,在文件上传成功后有 storage 服务器返回, 需要客户端自行保存。 虚拟磁盘路径:storage 配置的虚拟路径,与磁盘选项 store_path*对应。如果配置了 store_path0 则是 M00,如果配置了 store_path1 则是 M01,以此类推。 数据两级目录:storage 服务器在每个虚拟磁盘路径下创建的两级目录,用于存储数据 文件。 文件名:与文件上传时不同。是由存储服务器根据特定信息生成,文件名包含:源存储 服务器 IP 地址、文件创建时间戳、文件大小、随机数和文件拓展名等信息。 该文档是极速PDF编辑器生成,如果想去掉该提示,请访问并下载:http://www.jisupdfeditor.com/
3.3. 下载交互过程 编辑 1. client 询问 tracker 下载文件的 storage,参数为文件标识(卷名和文件名); 2. tracker 返回一台可用的 storage; 3. client 直接和 storage 通讯完成文件下载。 需要说明的是,client 为使用 FastDFS 服务的调用方,client 也应该是一台服务器,它对 tracker 和 storage 的调用均为服务器间的调用。 4.搭建 FastDFS 文件上传服务器 该文档是极速PDF编辑器生成,如果想去掉该提示,请访问并下载:http://www.jisupdfeditor.com/
安装如下: 直接买了一台服务器来安装 环境 : yum -y install zlib zlib-devel pcre pcre-devel gcc gcc-c++ openssl openssl-devel libevent libevent-devel pe rl unzip net-tools wget 再准备: yum install make cmake gcc gcc-c++ 2.新建目录: /home/fastdfs /home/fastdfs/client /home/fastdfs/file /home/fastdfs/storage /home/fastdfs/tracker 4.切到;/home/fastdfs 安装基础环境: 下载:wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz 解压:tar -zxvf V1.0.7.tar.gz 该文档是极速PDF编辑器生成,如果想去掉该提示,请访问并下载:http://www.jisupdfeditor.com/
解压后,进入到解压后的目录执行: ./make.sh ./make.sh instal 5.libfastcommon.so 安装到了/usr/lib64/libfastcommon.so,但是 FastDFS 主程序设置的 lib 目录是/usr/local/lib,所以需要创建软链接。 执行: # ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so # ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so # ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so # ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so 6.安装 Fastdfs,切到/home/fastdfs 目录下: 执行:wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz 解压后,进行目录里:执行: ./make.sh ./make.sh install 7.FastDFS 服务脚本设置的 bin 目录是 /usr/local/bin, 但实际命令安装在 /usr/bin/ 下: 找到:/etc/init.d/fdfs_storaged 和 /etc/init.d/fdfs_trackerd 这两个配置文件 该文档是极速PDF编辑器生成,如果想去掉该提示,请访问并下载:http://www.jisupdfeditor.com/
把文件中的:/usr/local/bin 替换成 /usr/bin 8:执行下面的命令:执行位置无所谓: # ln -s /usr/bin/fdfs_trackerd /usr/local/bin # ln -s /usr/bin/fdfs_storaged /usr/local/bin # ln -s /usr/bin/stop.sh /usr/local/bin # ln -s /usr/bin/restart.sh /usr/local/bin 9:进行到/etc/fdfs 下: 执行:cp client.conf.sample client.conf 执行 cp storage.conf.sample storage.conf 执行 cp tracker.conf.sample tracker.conf 10.修改:tracker.conf # 配置文件是否不生效,false 为生效 disabled=false # 提供服务的端口 port=22122 # Tracker 数据和日志目录地址(根目录必须存在,子目录会自动创建) base_path=/home/fastdfs/tracker # HTTP 服务端口 http.server_port=80 11.修改: storage.conf # 配置文件是否不生效,false 为生效 disabled=false 该文档是极速PDF编辑器生成,如果想去掉该提示,请访问并下载:http://www.jisupdfeditor.com/
# 指定此 storage server 所在 组(卷) group_name=group1 # storage server 服务端口 port=23000 # 心跳间隔时间,单位为秒 (这里是指主动向 tracker server 发送心跳) heart_beat_interval=30 # Storage 数据和日志目录地址(根目录必须存在,子目录会自动生成) base_path=/home/fastdfs/storage --需要修改,默认也可-- # 存放文件时 storage server 支持多个路径。这里配置存放文件的基路径数目,通常只配 一个目录。 store_path_count=1 # 逐一配置 store_path_count 个路径,索引号基于 0。 store_path0=/home/fastdfs/file --需要修改,默认也可-- # FastDFS 存储文件时,采用了两级目录。这里配置存放文件的目录个数。 # 如果本参数只为 N(如: 256),那么 storage server 在初次运行时,会在 store_path 下自动创建 N * N 个存放文件的子目录。 subdir_count_per_path=256 # tracker_server 的列表 ,会主动连接 tracker_server # 有多个 tracker server 时,每个 tracker server 写一行 tracker_server=XXXX:22122 --需要修改-- # 允许系统同步的时间段 (默认是全天) 。一般用于避免高峰同步产生一些问题而设定。 sync_start_time=00:00 sync_end_time=23:59 # 访问端口 http.server_port=80 --需要修改,对应 tracker 配置的 http 端口- 12、修改:client.conf # Client 的数据和日志目录 base_path=/home/fastdfs/client # Tracker 端口 tracker_server=192.168.2.125:22122 以上三个文件全部修改完成。 该文档是极速PDF编辑器生成,如果想去掉该提示,请访问并下载:http://www.jisupdfeditor.com/
13.命令: 开机自启 chkconfig fdfs_trackerd on chkconfig fdfs_storaged on 跟踪停止 service fdfs_trackerd stop 存储停止 service fdfs_storaged stop 跟踪启动 service fdfs_trackerd start 存储启动 service fdfs_storaged start 启动后,可以用 ps-ef | grep 测试启动 或者用:# netstat -unltp|grep fdfs 14.上传文件用: 切到/home 下,在 home,传一个 11.jpg 图片: /usr/bin/fdfs_upload_file /etc/fdfs/client.conf 11.jpg 可以在/home/fastdfs/file 中找到 15.下载展示时,需要用到 nginx,安装:如果已安装,直接跳过进行配置: 一行一行:依次执行:切到/home 目录 该文档是极速PDF编辑器生成,如果想去掉该提示,请访问并下载:http://www.jisupdfeditor.com/
yum install -y pcre pcre-devel yum install -y zlib zlib-devel yum install -y openssl openssl-devel wget -c https://nginx.org/download/nginx-1.12.1.tar.gz tar -zxvf nginx-1.12.1.tar.gz cd nginx-1.12.1 ./configure make make install /usr/local/nginx/sbin/nginx -s stop /usr/local/nginx/sbin/nginx -s quit /usr/local/nginx/sbin/nginx -s reload 16:修改配置文件: 进入到 nginx.conf 中,添加如下 该文档是极速PDF编辑器生成,如果想去掉该提示,请访问并下载:http://www.jisupdfeditor.com/
分享到:
收藏