我有一个Ruby on Rails应用程序,用户可以上传视频,我正在寻找一个系统,用于将用户上传的视频转换为FLV格式。
目前我们使用的是FFMPEG,由于视频转换是一项繁重的任务,它似乎需要花费大量的时间和大量的CPU资源。
我们正在寻找是否可以使用map-reduce / Hadoop框架来实现视频转换,因为它是完全分布式的。
使用map-reduce进行视频实时转换是个不错的选择吗?如果是这样的话,如何实现呢?
注:每个视频文件大小约为50 - 60 MB。
发布于 2014-03-17 19:27:45
你的需求是“实时”转换。记住,Hadoop是一个“批处理框架”。
我说Hadoop在这里是一个糟糕的选择。一个更好的解决方案肯定是使用像Storm这样的东西
Apache Storm是一个免费的开源分布式实时计算系统。Storm使得可靠地处理无限数据流变得容易,就像Hadoop对批处理所做的那样进行实时处理。
就我个人而言,我使用Storm实现了一个与您类似的项目,结果令人惊叹。
另一种选择是使用分布式参与者模型,例如Akka.io或Erlang。但是由于你是一家Ruby商店,Storm或Akka对你的团队来说会更容易。
https://stackoverflow.com/questions/22451948
复制相似问题