看短视频APP系统开发中4个架构问题,让你不走冤枉路
5G将开启万物广泛互联改变每个人的生活,短视频也将不再受限与网络环境的问题,开发短视频APP也炙手可热,5G时代,未来我们的生活将有多6试想而知。互联网各家企业也都看准其中的商业,现在 如果开发短视频系统,有很多需要注意的问题,比如架构问题,事先了解好短视频APP开发架构问题,避免日后走冤枉路。
1.数据格式标准的差异
与文本数据相比,短视频属于二进制数据,拥有固定的编码标准。在短视频app开发过程中比较常见也常用的有H.264、H.265等格式标准。
2.数据大小的差异
(1)由于短视频的数据量比图片和文本都要大得多,所以在上传、存放以及播放方面都是需要注意的。在网络环境较差的状况下上传视频,上传的成功率普遍较低,特别是在晚高峰,也就是省际网络比较拥塞的情况下就更加明显。针对视频的上传,需要基于CDN进行动态加速来优化网络链路,同时对于较大的视频采取分片上传的方式,以减少失败重传的成本和失败率。不同的CDN的链路状况在不同的地区和运营商表现不一,所以就需要选择比较适合自己情况的CDN。
(2)由于数据相对较大,当数据量达到一定规模时存储容量也会面临一些挑战。目前市面上的APP视频容量级别达到的规模要求存储本身能具备较强的线性扩展能力,并且有足够的资源冗余,但是传统的Mysql等数据库比较难支持,所以需要借助专用的分布式对象存储,通过自建的服务或云存储服务进行解决。
(3)在播放的过程中,有的视频文件较大就很容易受到网络环境的影响,为了避免卡顿就需要在一些细节上进行处理,比如通过网络链路进行优化或者通过多码率的自适应优化。比如多路转码,然后再根据特定的算法模型量化用户网络情况进行选码率,网络环境较差的选择低码率。
3.数据处理需求
(1)由于视频的本身可以承载大量信息,所以就需要处理大量的数据。比如视频转码、视频水印或者是视频的鉴黄等。对视频进行处理时通常分为两个方面,一个是客户端的处理,另一个是服务端的处理。
(2)客户端的处理通常使用手机的处理性能来减少服务器的压力,同时也容易面临一些低端机型的处理效率问题。在客户端主要是是对视频美颜美化的算法、人脸识别或者是视频的编解码等进行处理。目前客户端的视频编解码主要分为软编码和硬编码的方式,软编码的兼容性较好但是耗能高且慢。硬编码低耗能且快但是兼容性较差。所以通常采取结合的方式进行处理。
(3)服务端的处理主要是进行视频的一些审核和转码等工作。目前经常使用ffmpeg来进行处理。但是服务端需要考虑的问题就是资源消耗方面比较高,使用的机器数也比较多,独一在服务端做视频处理操作需要控制在合理的范围之内。
4. 审核问题
短视频的内容本身有多种多样的表现形式,所以也容易出现各种涉黄涉恐的视频信息,如果处理不好就会非常麻烦。视频审核最大的问题就是会面临视频时间过长,造成人力审核成本的增加。在这一方面可以采取一些技术手段,比如接入一些三方视频识别模块、抽取视频中某几帧进行检查或者也可以通过大数据分析等方法进行审核。
短视频APP开发已然成为大势所趋,在开发过程中会出现很多问题,仅仅是文中所提到的架构问题,还有很多需要解决的问题都值得注意,这些都关系着短视频APP后期能否正常运行,运行会不会出问题等等。
- 点赞
- 收藏
- 关注作者
评论(0)