asp.net-mvc - Asp.Net Core Web App 从磁盘播放和下载视频
问题描述
我在这里有一个场景。我必须构建一个 asp.net 核心 Web 应用程序,从中我必须浏览驱动器和目录(托管位置:windows)并列出可用的视频文件。这部分工作完美。
现在我必须对这些视频文件做两件事:
- 需要下载文件(除了大小<2 GB)
- 无论格式和大小如何,都需要在页面上播放视频。
寻求您的帮助。提前致谢。
解决方案
如果你的网站视频,每个视频都很小,假设单页视频大小不超过100M,或者你的网速极快,我觉得你的需求是可行的。
我上面所说的只是单个页面中包含的内容。当视频资源不多时,页面加载速度与带宽有关。
读取某个路径下的文件很简单,但是我觉得网速和IIS的性能是读取和下载的瓶颈。
原因及建议
1. IIS web server只是承载web应用,也可以存储一些小的静态资源,比如网站图片、css和js文件。
IIS 本身在 Windows 上。在用户不多的情况下,接入1G视频即可正常运行。它可以慢慢加载。但是如果有很多用户,比如100人或者1000+人同时访问呢?我觉得web服务器压力很大,所以你的idea只适合小范围的用户,建议视频资源不要太大。
2. 建议您使用第三方媒体服务来存储和阅读视频。例如,使用Azure 媒体服务。
原因是如果通过web服务器读取该路径下的视频资源,在视频加载方面肯定是很慢的,尤其是当文件很大,用户访问较多的时候,这种现象会特别明显。
使用 Azure 媒体服务,将提高播放视频的打开速度和下载速度。作为Web服务器,IIS将不再承受这部分媒体服务的压力。
推荐阅读
- java - ResourceConfig 实例不包含 REST API 中的任何根资源类异常
- ios - TableView Reload rows Limitation
- python - “ImportError:无法导入名称”使用 flask_sqlalchemy
- stripe-payments - Stripe Billing 的付款信息
- c++11 - 如何阻止 C++ 自动将 double 转换为 int?
- javascript - 动态添加文本输入字段
- c# - C#在文本框中的光标位置插入字符
- css - 在 Less 中应用 CSS :not() 和 :hover
- ios - 2 可滚动视图中的 UIcollectionview
- r - 在 R 中的向量中从 0 开始索引