现在的视频供应商很多,我有幸能够了解一些他们的系统架构。从我的角度观察,当前我所看到的体系存在一个小的瑕疵:易用性(维护性)。这直接推高了维护成本(人力或时间)。我试图构想这样一个门槛较低的架构,使得架设视频网站成为一件轻松的事情,让管理人员更多的关注业务逻辑而不是技术细节。
该构想包含视频制作、发布、以及调度三大模块,难点在于“调度”。如果进展顺利(或者说、我能够坚持做下去),那么后期该考虑播放环节,实现一套完整的视频服务集成解决方案。
我对该业务易用性的理解、当前包含三个方面:首先是流程的简化,其次是友好的管理界面,最后是友好的系统间接口。
1、我将流程大致分为:下载(包含文字内容)、转码、上传至流媒体服务器、Cache调度。
2、摒弃 linux(java?)下的 Console 模式,全程采用 form 视图,降低管理人员专业知识门槛。
3、系统间尽量采用 wcf 协议交换数据,降低开发成本,同时增加系统的可扩展性(面向接口编程)。
媒体中心,我大胆的采用树状结构并且“区域自制”,即每个子网络相对独立,这使得系统的健壮性大大加强,并且更符合分布式系统的特征。
下面贴出的是草图:
后续将就各个模块进行设计、编码。
刚接触 EA(Enterprise Architect),试着用部署图描述我的想法(学习 UML,也从不怕犯错做起:)):