Skip to content

tbghg/utopia-back

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

156 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Utopia-back

亮点介绍

  • 七牛云SDK使用
    • 使用七牛云 kodo,采用 uploadToken + 回调 确保密钥安全性
    • 针对未上传封面的视频,异步截取视频首帧,回调替换视频封面
  • 热门视频设计方案
    • zset存储,异步刷取DB,获取一段时间内点赞量增长最高的视频,保持动态更新
    • version控制缓存版本,避免用户因热门视频突然更新而影响体验
  • 判断用户是否点赞缓存方案
    • 通过hash类型进行缓存,进行冷热数据分离,极大减少存储成本的同时也不会给DB带来过大负担
    • 根据用户维度存储减少查询成本,TTL合理续期
  • 接口及IP限流
    • 采用令牌桶对可针对不同接口配置不同的限流策略
    • 同时支持各接口对用户IP限流,防止用户恶意攻击

项目介绍

项目介绍详见:项目介绍

使用说明

确保go版本大于等于1.21,通过go version命令检查

# 克隆项目
git clone git@github.com:VideoUtopia/utopia-back.git
cd utopia-back

# 修改配置文件,各字段含义见yaml文件字段备注
cp config/comfig_example.yaml config/congfig.yaml 
vim config/congfig.yaml

# linux 编译运行
go build -o server main.go 
./server

# windows
go build -o server.exe main.go
./server.exe

About

七牛云1024-web短视频应用

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors