前言:从15年开始,云计算就开始从领先概念慢慢落成实地, 视频云技术作为其中重要分支,得到了长足发展。今天是笔者的生日,也从技术发展角度解析下视频云的要点技术。

1.优酷视频云技术核心:Cache Cloud 。

2.云架构:

2.1Redis搭建:环境初始化、实例部署安装、类型架构支持;

2.2客户端接入:Java-SDK接入、客户端监控、其他语言接入;

2.3运维管理:宿主环境、资源管理、应用审计、应用运维、应用质量监控、应用拓扑诊断;

2.4弹性伸缩:资源评估、垂直伸缩、水平伸缩、外部接入;

2.5统计监控:指标采集、应用统计、节点统计、机器统计、监控报警、问题诊断;

3.视频云技术架构:

视频云架构 视频云计算_sql

 

4.防止缓存雪崩技术(视频云高并发,高通量特性必然会导致的问题):

4.1缓存层高可用设计,Redis 通量的顶峰阈值拉高。

4.2使用隔离组件为后端限流和降级

4.3重建优化缓存热点Key

5.字符串重构:

{
    "vid": "413368768",
    "title": "宇宙最帅立哥",
    "videoAlbumPic": "http://photocdn.youku.com/60160518/vrsa_ver8400079_ae433_pic26.jpg",
    "pid": "6494271",
    "type": "1024",
"playlist": "6494271",
    "playTime": "468"
}

6.解决热点KEY问题:

6.1拆分复杂数据结构

6.2迁移热点Key

6.3本地缓存加通知(kafka)

7.机器监控指标:

视频云架构 视频云计算_docker_02

 

8.数据训练 代码示例:

export CUDA_VISIBLE_DEVICES=0
python train.py --model_name=NEXTVLAD \
    --config=./configs/nextvlad.yaml \
    --log_interval=10 \
    --valid_interval=1 \
    --use_gpu=True \
    --save_dir=./data/checkpoints \
    --fix_random_seed=False

   

    bash run.sh train NEXTVLAD ./configs/nextvlad.yaml