前言:从15年开始,云计算就开始从领先概念慢慢落成实地, 视频云技术作为其中重要分支,得到了长足发展。今天是笔者的生日,也从技术发展角度解析下视频云的要点技术。
1.优酷视频云技术核心:Cache Cloud 。
2.云架构:
2.1Redis搭建:环境初始化、实例部署安装、类型架构支持;
2.2客户端接入:Java-SDK接入、客户端监控、其他语言接入;
2.3运维管理:宿主环境、资源管理、应用审计、应用运维、应用质量监控、应用拓扑诊断;
2.4弹性伸缩:资源评估、垂直伸缩、水平伸缩、外部接入;
2.5统计监控:指标采集、应用统计、节点统计、机器统计、监控报警、问题诊断;
3.视频云技术架构:
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.机器监控指标:
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