基于浏览器的文件上传到AWS S3并编码Server-Client Workflow



im编写单页 - web-app(angularjs)和服务器后端(node.js)。它们之间的交流是通过休息完成的。

当前正在尝试实现以下方案:

  1. 将大文件从浏览器上传到S3公共存储桶。

  2. 将上传的文件复制到S3

  3. 上的私有存储桶
  4. 将文件上传到HTML 5兼容格式(AWS Elastic Transcoder)

  5. 存储有关文件中有关文件的元观察,以访问以后

我正在绞尽脑汁,以对服务器和客户端之间的通信/数据工作流进行良好的设计,但始终遇到以下问题?

  • 在过程的末尾或开始时存储文件元观察。如果是一开始,我必须存储并处理一些状态信息?

  • 谁应该开始将上传的文件复制到私字桶。服务器还是客户端?如果是服务器,客户如何才能通知工作?

  • 谁开始转码过程?如果是服务器,客户如何才能通知工作?

您将如何执行此操作?

有一个很好的教程,描述了您计划实现的用例:http://www.bitcodin.com/blog/2015/02/create-mpeg-dash--hls-content-for-amazon-s3 and-cloudfront/

如果您的转码系统具有RESTFULL API(例如本教程或任何其他服务中使用的BitCodin),您也可以执行您的应用程序客户端,并使用API调用以获取转码的状态,等等。但是,使用API,您也可以执行相同的服务器端,无论哪种更适合您。

我个人会在过程开始时存储元数据Infos,因为这是您在数据库/CMS/等中生成"资产"的时间点。

最新更新