【原创】拉勾课程速推指南-阶段四 模块四 轻量级分布式文件系统FastDFS、阿里云OSS云存储平台

文章内容输出来源:拉勾教育Java高薪训练营

学习心得

【拉勾课程速推指南】学习心得

课程介绍

第四阶段 大型分布式存储系统架构进阶
模块四 轻量级分布式文件系统FastDFS、阿里云OSS云存储平台
本模块对分布式文件系统FastDFS集群架构与原理剖析,使用FastDFS+Nginx搭建高吞吐文件服务器,并对阿里云OSS云存储平台系统讲解。

作业内容

作业一:
搭建FastDFS图片服务器,通过http请求可以访问服务器中图片的动态压缩图。具体要求如下:
在Linux系统中安装FastDFS服务器
可以使用FastDFS自带的工具将文件上传到FastDFS,并可以通过http 访问到对应的图片
可以使用GraphicsMagick工具生成缩略图,通过http访问某个图片时,显示其对应的动态压缩图
作业要求:
提供Linux下的安装步骤文档

作业二:
使用SpringBoot和OSS实现图片的上传、下载和删除功能, 具体要求如下:
可以使用postman 发送上传请求 /oss/upload ,实现图片上传到OSS对应的Bucket中
类型检查:必须为 jpg、png 或者 jpeg类型,其它图片类型返回错误提示信息
大小检查:必须小于5M,大于5M时返回错误提示信息
图片名称:生成的文件名,必须保持唯一
可以使用postman 发送下载请求 /oss/download,实现图片下载
可以根据图片名进行文件的下载
可以使用postman 发送删除请求/oss/delete,实现图片删除
可以根据图片名进行文件的删除
1、提供资料:说明文档,验证及讲解视频。
2、讲解内容包含:题目分析、实现思路、环境介绍。

课程目录及观看建议

2倍速模式

  • 课程:2小时
  • 作业:5小时

*** 必看
** 建议看
* 可不看

任务一:轻量级分布式文件系统FastDFS
1.FastDFS课程介绍(05:55)
2.FastDFS基础回顾(16:06)*
3.FastDFS环境搭建和测试(26:21)***
4.FastDFS和Nginx结合(21:54)***
5.Java访问FastDFS(32:53)
6.FastDFS架构详解(12:19)
7.FastDFS设计理念(09:35)
8.文件上传和下载功能原理(19:22)
9.文件同步、删除等功能原理(14:15)
10.FastDFS集群搭建和测试(33:52)
11.FastDFS配置和优化(25:55)
12.SpringBoot访问FastDFS集群(40:08)
13.FastDFS互联网应用实战方案(12:36)***

任务二:阿里云OSS云存储平台
1.OSS课程介绍(09:12)
2.OSS和自建服务器对比(10:06)
3.OSS应用场景和计量计费(09:00)
4.OSS云存储的概念(15:32)*
5.OSS基本功能(20:24)*
6.URL规则防盗链和自定义域名(19:53)
7.日志记录(15:26)
8.权限控制(13:22)
9.OSS开放接口(12:17)
10.错误响应码(09:46)
11.Java访问OSS(21:39)***
12.SpringBoot访问OSS(37:06)***
13.数据处理和CDN(18:14)

注意事项

  • 作业一:
软件版本
FastDFS 5.11
Nginx 1.15.6
fastdfs-nginx-module 1.20
ngx_devel_kit 0.3.0
lua-nginx-module 0.10.9rc7
LuaJIT 2.0.4
GraphicsMagick 1.3.35
  1. FastDFS和GraphicsMagick安装流程见参考资料1、2
  2. 相关软件版本问题,尤其是 lua-nginx-module 0.10.9rc7,否则会出现各种问题。详情见参考资料3。
  3. 动态压缩需要配置nginx路由。详情见参考资料4。
参考资料

如何安装nginx_lua_module模块,升级nginx,nginx-lua-fastdfs-GraphicsMagick动态生成缩略图,实现图片自动裁剪缩放

nginx-lua-fastdfs-GraphicsMagick安装

nginx 中添加 lua 模块,支持lua脚本以及遇到的坑

Nginx+Lua+GraphicsMagick实现图片自动裁剪/缩放、以及定时清理生成的缩略图

  • 作业二:
软件版本
JDK 11
Spring Boot 2.3.1.RELEASE
  Spring Boot Web
Aliyun Oss Sdk 3.10.2
  1. 缺少相关类库包

java.lang.ClassNotFoundException: javax.xml.bind.JAXBException

JAXB API是java EE 的API,因此在java SE 9.0 中不再包含这个 Jar 包。
java 9 中引入了模块的概念,默认情况下,Java SE中将不再包含java EE 的Jar包,而在 java6、7、8时关于这个API 都是捆绑在一起的。

两种解决方案:

a. 将jdk降为8

b. 引入JAXB API依赖(推荐)

<dependency>
    <groupId>com.aliyun.oss</groupId>
    <artifactId>aliyun-sdk-oss</artifactId>
    <version>3.10.2</version>
</dependency>
<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>jaxb-api</artifactId>
    <version>2.3.1</version>
</dependency>
<dependency>
    <groupId>com.sun.xml.bind</groupId>
    <artifactId>jaxb-impl</artifactId>
    <version>3.0.0-M4</version>
</dependency>
<dependency>
    <groupId>com.sun.xml.bind</groupId>
    <artifactId>jaxb-core</artifactId>
    <version>3.0.0-M4</version>
</dependency>
<dependency>
    <groupId>javax.activation</groupId>
    <artifactId>activation</artifactId>
    <version>1.1.1</version>
</dependency>
  1. 文件上传大小限制

默认1M,需要设置成10M,便于超过5M时提示错误信息。注意Spring Boot版本不同,配置也不同。以下为2.0以上:

spring:
  servlet:
    multipart:
      enabled: true
      max-file-size: 10MB
      max-request-size: 10MB
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,802评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,109评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,683评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,458评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,452评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,505评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,901评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,550评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,763评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,556评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,629评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,330评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,898评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,897评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,140评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,807评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,339评论 2 342