目录

学习指南

涉及技术

前置基础储备

项目展示

功能模块主要分类

开发须知

技术拓扑图

前端

后端


学习指南

涉及技术

后端技术栈:Springboot,Spring,mybatis,MinIO,Redis,MongoDB,Nacos,Knife4j,Lombok,AOP,Hibernate,Maven,Nginx,Linux,云服务技术

前端技术栈:uin-app,uniCloud

前置基础储备

Spring,Mybatis,SpringBoot

熟悉MySQL/MariaDB

掌握Linux的基础命令

前端基础,HTML,CSS,JS


项目展示

首页--展示视频播放、视频基本信息、点赞功能等


留言功能,留言点赞...


一个分享的功能,保存到相册,复制链接和二维码。


当然也包含了这个在上面的这个部分,有附近关注和推荐。在关注里面是包含了是一些我关注的所

有的博主他所发表的一些视频。


附近的话,我们在这里并没有去做,需要去结合地理位置,在后续如果有机会的话进行开发。


朋友:在这里是所有的我和我的粉丝。其实就是我和其他人,我们互为关注,互为粉丝。只要是朋

友,那么我所有的朋友,他们所发表的视频在这里全部都会展示。这个是需要和关注区别开来,关

注仅仅只是我关注的那些人。


视频的发布界面:


我的个人页面:下面的话是一些相应的功能,包含了我发布的作品

私密视频:

我点赞过的视频:


相应的一些信息的修改:

其中所对应的修改功能都可以实现,包括头像,昵称,性别等...


消息模块:

消息在这边就是相应的,只要是有一些相应的用户关注我,点赞我,回复我,留言给我。那么,

这些相应的一些不同类型的消息都可以在这里做一个展示。 如果说是关注的话呢,你在这边还可

以去做一个回粉。


功能模块主要分类

视频模块

包含了我们和视频相关的,我们也是可以去通过搜索去搜索相应的一个视频的。

留言模块

可以针对我们的视频去做评论,去做留言,另外,其他的用户也可以回复我。

粉丝模块

我关注你,你关注我,你我相互关注,我们可以成为更亲密的一个朋友关系。

消息模块

我们采用的是MongoDB去做的

用户模块

包含了用户的一个相应的信息。

开发须知

以后端为主要目标

前端会运行即可

前端对接后端接口


技术拓扑图

前端

前端这块其实这个就是访问层。就是作为用户端去使用的,那么用户端是可以通过手机APP来访问

并发起请求到我们的后端。虽然我们是iphone和安卓手机,但我们接口的API是统一的,如果说有

小程序,网页,甚至是鸿蒙os相关的app,也都可以直接来请求我们的后端。

前端使用Flex布局,使用了Unicloud相关的cnd技术,只要是文件、图片、视频等等你都可以上传

到cdn去使用。

后端

网关的话可以使用Nginx或者说是使用阿里Tengine,Tengine是基于Nginx的一个二次开发,


这两者都可以去使用,它是可以去提供高可用的负载均衡,可以把请求分发给后面的集群服务。

这个服务集群,就是我们后面会去真正去开发的一个后端。通过springBoot的所构建的一个jar包

或者war包发布。它是通过springBoot,Spring,Mybatis这三大的主流框架来进行开发的,

最终它可以去作为一个集群的形态去提供一个高可用的服务。

左侧:Redis是分布式缓存中间件,RabbitMQ是分布式消息中间件,消息队列。MinIO是分布式对

象存储,它是可以去进行文件的存取。以前的话,可以使用OSS或者使用这个fast-dss都可以去

做,而我们使用这个新的MinIO非常主流。现在目前很多公司都在使用。用它去做一个文件的上传

处理都可以。腾讯云短信服务,用于发送短信的验证码,我们的登录是基于短信登录的,用手机号

进行的注册和登录。

右侧:

Nacos集群,作为注册中心,它还有一个功能是分布式配置中心,那么像我们的一些配置,我们现

在可以动态的写入到Nacos里面去。那么这样我们的Springboot在生产环境里面,它就直接可以去

从我们的Nacos中去进行一个获取。如此一来的话,我们就不需要手动的去修改Spingboot,只需

要在Nacos中去做一个改动,Springboot就可以动态的去获得,我们就可以有更灵活的一个可变

性。在其中去调整我们相应的一些技术参数都是可以的。

底层:

数据层,我们有两个板块,MariaDB和MongoDB。主要是作为一个数据的一个存储,那么当然其

实我们还有一部分的数据是存在于Redis中的,它也是可以作为一个数据层的,更快。该项目,

MariaDB和MongoDB两者选择其中之一都是可以的。

我们在项目介绍中开发附近板块,需要elastic search,它作为一个数据搜索搜索引擎。如果说你想

要去做搜索引擎,如果说想要去结合极优地理位置去做一个位置相关的开发,基于位置的一个搜

索视频,那么我们也是可以把es作为数据层引入进来。

那么,这整个一块就其实就是我们整体的一个技术架构拓扑图。

最后,我们会通过Nginx网关集合高可用,上云服务器将我们整体的项目进行部署,让app在任何

的手机端上去使用。

从零开始搭建仿抖音短视频App--项目介绍和架构设计演示相关推荐

  1. 从零开始搭建仿抖音短视频APP-构建后端项目

    项目持续创作中... ​​​​​​仿抖音短视频APP项目专栏 目录 聚合工程 构建父工程 构建子工程 构建接口工程并且暴露api接口 优雅Restful相应封装 Lombok与多环境profile 数 ...

  2. 从零开始搭建仿抖音短视频APP-开发用户业务模块(2)

    项目持续创作中: 仿抖音短视频APP项目专栏 目录 安装redis6.0缓存中间件 整合Redis并存储验证码 拦截器限制60s短信发送 优雅异常封装返回拦截器异常 安装redis6.0缓存中间件 需 ...

  3. 从零开始搭建仿抖音短视频APP-后端消息业务模块开发(2)-基础版完结篇

    项目持续更新中: 仿抖音短视频APP专栏 目录 系统消息入库保存 MongoDB分页查询系统消息列表 删除系统消息 系统消息入库保存 这里还剩下最后一个点赞评论没有完成 这里如果点赞了你的评论,你们视 ...

  4. 从零开始搭建仿抖音短视频APP-开发用户业务模块(3)

    项目持续更新中: 仿抖音短视频APP专栏 目录 注册登录-BO接受前端参数验证 对BO校验进行统一封装 开发用户是否存在 开发创建用户Service 实现短信注册登录与分布式会话 注册登录-BO接受前 ...

  5. 从零开始搭建仿抖音短视频APP-后端开发消息业务模块(1)

    项目持续更新中: 仿抖音短视频APP专栏 目录 保存系统消息到MongoDB 系统消息入库保存-关注 系统消息入库保存-点赞短视频 系统消息入库保存-评论与回复 保存系统消息到MongoDB 我们把m ...

  6. 从零开始搭建仿抖音短视频APP-后端开发短视频业务模块(2)

    项目持续更新中: 仿抖音短视频APP 目录 实现数据层mybatis自定义mapper与sql 查询短视频列表api 实现下拉刷新和分页功能 实现数据层mybatis自定义mapper与sql 在数据 ...

  7. 从零开始搭建仿抖音短视频APP-后端开发短视频业务模块(3)

    项目持续更新中: 仿抖音短视频APP专栏 目录 视频详情页展示的数据层实现 视频详情页展示的api实现 短视频下载.复制连接.二维码展示 视频保存到相册 复制链接 二维码展示 实现转为私密或公开视频 ...

  8. 从零开始搭建仿抖音短视频APP--后端开发粉丝业务模块(3)

    项目持续创作中: 仿抖音短视频APP专栏 目录 实现用户点赞视频 用户取消点赞 用户是否点赞视频的判断 实现用户点赞视频 用户在点赞我们的视频后,我们需要去实现一些相关的业务, 这里需要对应到数据库的 ...

  9. 从零开始搭建仿抖音短视频APP--后端开发粉丝业务模块(1)

    项目持续更新中: 仿抖音短视频APP专栏 目录 关注短视频博主 Redis技术妙用 取消关注博主 关注短视频博主 在我们的主页中,刷视频时是可以在头像下方进行一个关注 点击头像,进入对方的主页也是可以 ...

最新文章

  1. oracle高级查询用法
  2. android 新分区 挂载,android 新增分区以及挂载方法-Go语言中文社区
  3. LeetCode题组:第914题-卡牌分组
  4. 极其实用的sql脚本【建议收藏】
  5. 转-Kafka【第一篇】Kafka集群搭建
  6. yandexbot ip列表整理做俄罗斯市场的站长可以关注一下
  7. 民科微服务小程序怎么注册_民科微服务小程序(医师护士电子化注册系统入口)公众号...
  8. 01背包问题python实现
  9. Java 开发者最困惑的四件事
  10. 处理ajax表单验证结果,使用 jQuery Form 插件完成带数据验证的 Ajax 表单
  11. 多图片的合并(2种方式,可以设置间距)
  12. html 椭圆特效,HTML帖图常用到的特效《椭圆形》(国外英语资料).doc
  13. ssl免费证书获取,并在nginx服务器上安装ssl证书,以及docker安装nginx需注意的细节。
  14. 职业倾向测试脸型软件,气质类型测试适合职业
  15. 基于天地图的应用服务系统设计开发—以甘肃高校招生服务为例
  16. 基于python毕业设计毕设课题选题参考
  17. Causality Inspired Representation Learning for Domain Generalization 阅读笔记
  18. 前端培训丁鹿学堂:css伪类选择器(一)
  19. 光驱刻录软件提示需要计算机管理员权限,如何禁用光驱刻录功能、设置光驱只读而禁止刻录的方法...
  20. linux认证版本,LPI Linux认证考试教程 中文PDF最新版

热门文章

  1. Python-玩转数据-python ftp下载文件
  2. Word 同时设置中文字体和英文字体
  3. cydia服务器未响应,cydia错误常见问题解决办法汇总
  4. Element-ui Popconfirm气泡确认框的确认及取消事件不生效
  5. PADS Logic图文教程(一):栅格的设置和显示
  6. DirectUI技术与无句柄窗口应用
  7. Three.js 实现点击模型改变颜色
  8. 智能建筑中的机房空调与新风系统
  9. 微信小程序获取收货地址及存储收货地址
  10. 2021年建5G基站60万个;中兴遭减持;三大运营商2020年成绩单;电信发布新手机...