【问题标题】:Streaming audio for Ruby on rails application running on LAN with front end server & Audio files on different machines?使用前端服务器和不同机器上的音频文件在 LAN 上运行 Ruby on rails 应用程序的流式音频?
【发布时间】:2012-09-24 07:47:16
【问题描述】:

我有一个 ruby​​ on rails 应用程序:
1.它使用jplayer作为音频播放器
2. 现在音频文件和应用服务器在一台机器上。
3. 我想在不同的机器上分离音频文件和服务器运行的应用程序。这样我就可以从它们在 LAN 上流式传输音频。
4. 我已经将数据库与运行应用程序的服务器分开了
5. 我在所有 3 台机器上都使用 cent 0S 5.8
一个用于运行 ROR 应用程序,第二个用于数据库,第三个用于音频流。 谁能给我一个想法
谢谢

【问题讨论】:

  • 您希望浏览器中的所有内容都通过 RoR 应用程序吗?或者您的客户端浏览器是否会连接到三个不同的服务器。
  • 是的,托管在一台服务器上的音频应该由托管正在播放音频文件的 ROR 应用程序的另一台服务器使用。更多的数据库已经在不同的机器上,它工作正常。为此,我已授予 DB 权限,并在 ROR 应用程序中对 database.yaml 进行了小的更改。

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1 centos


【解决方案1】:

暂时忽略流式传输,这里是一个 Rails 应用调用另一个 Rails 应用的简单示例:

require 'net/http'
require 'uri'
url = URI.parse("http://yourother.com/getaudio/#{@audio.id}")
req = Net::HTTP::Get.new(url.path)
resp = Net::HTTP.new(url.host, url.port).start {|http| http.request(req)}
play_your_audio(resp.body)

注意 GET 的使用,所以我们不必担心身份验证。

这是一篇关于流式 IO 和 Rails 的好文章:

http://www.intridea.com/blog/2012/5/24/building-streaming-rest-apis-with-ruby

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-05
    • 1970-01-01
    • 2011-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-05
    • 2014-04-26
    相关资源
    最近更新 更多