Giter Club home page Giter Club logo

niuktok's Introduction

第二届七牛云 1024 创作节作品总仓库

总体说明

功能演示

功能说明

模块

用户管理

  • 基础功能
    • [√] 用户注册
    • [√] 用户登录
      • 接入三方鉴权
      • 接入验证码体系
    • [√] 用户登出
    • 用户基本信息修改
    • 用户头像修改
    • [√] 用户鉴权信息修改

视频管理

  • 基础功能
    • [√] 视频存储
    • [√] 视频分类
    • [√] 视频拉取
    • 视频检索
  • 高级功能
    • 视频截帧
    • 视频分片存储
    • 视频切片传输:自适应清晰度
    • 视频提前缓存策略
    • 热门视频:热度评估策略
    • 视频推送拉取结合:大 V / 非大 V 视频发布策略
    • 自动标注视频标签:视频理解
    • 视频推荐:个性化推荐

交互管理

  • 基础功能
    • [√] 用户发布视频
      • 视频封面
      • [√] 视频标签
    • [√] 用户(取消)观看视频
    • [√] 用户(取消)收藏视频
    • [√] 用户(取消)点赞视频
    • [√] 用户(取消)分享视频
    • 用户编辑已发布视频信息
    • 用户关注用户
    • 用户评论视频:楼中楼
    • 用户检索
  • 高级功能
    • 自动跳转用户上次观看视频进度
    • [√] 不推送曾推送给该用户的视频

消息管理

  • 基础功能
    • 系统消息推送:被点赞、评论、关注等
  • 高级功能
    • 用户聊天
    • 多模态消息:文本、表情、语音、卡片等

待规划模块与功能

  • 直播模块
    • 直播推拉流
    • 实时弹幕 / 评论
  • 支付模块
    • 直播打赏
    • 会员体系
  • 视频编辑模块
    • 特效渲染
    • 视频剪辑
    • 直播动效
    • 背景音乐提取
  • 购物模块
    • 直播推物
    • 商品秒杀
  • 后台管理模块
    • 多权限管理
    • 黑白名单设置
    • 自动告警
  • 推荐模块
    • 部署推荐算法
    • 训练数据仓库
  • 待优化
    • 缓存热数据:热门视频信息等
    • 异步批量化操作:点赞、收藏、关注等数量不敏感的功能,可以通过异步批量化减轻负担
    • 视频处理:优化视频传输
    • 熔断与限流
    • 链路追踪
    • 日志体系
    • 埋点体系
    • 自动部署 CI/CD
    • 单元测试 & 压力测试

总结与反思

  • 时间很紧,项目基础架构的搭建浪费了大量的时间,最后实际开发业务的时间很少
  • 部分功能仅仅实现,还没有优化,例如视频的拉取、用户与视频的交互等
  • 收获:基础架构可复用在不同的项目中,从零开始搭建一次后对相关组件有了更深的了解(例如 Nacos、Gateway、Security 等)

niuktok's People

Contributors

peileizzz avatar gfromyh avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.