【问题标题】:How to provide your app with a network API如何为您的应用提供网络 API
【发布时间】:2009-10-31 23:17:40
【问题描述】:

我将编写一个 Ruby 应用程序来实现由多个音频和视频编码/处理步骤组成的视频转换工作流程。

应用界面有两个核心功能:

  • 排队新视频
  • 监控每个视频的进度

用户可以使用 Ruby on Rails 编写的网站访问这些功能。

挑战在于:我想让工作流应用程序成为一个自给自足的应用程序,而不依赖于 Web 视图的存在。

为了实现这种分离,我认为向工作流应用程序添加网络 API 是一个很好的解决方案,因为这允许工作流应用程序驻留在与 Web 服务器不同的服务器上。

我的问题是:对于这样的网络 API,您建议哪种解决方案?

几个选项是:

  • 实现一个简单的 TCP 服务器并发明我自己的基于字符串的 API
  • 使用某种 REST api(我不知道这是否适合这种情况)
  • 某种网络服务解决方案(SOAP、XML-RPC)
  • 另一个现有框架

请随时分享您对此的看法。

【问题讨论】:

    标签: ruby-on-rails ruby web-services api networking


    【解决方案1】:

    我建议两件事:

    • 首先,使用 REST 作为您的 API。这使您可以编写一个具有用户界面和 API 的核心应用程序供外部应用程序使用。

    • 其次,看看PandaStream。这是一个 Merb 应用程序,可将多种格式的视频编码到 Flash 中。它有一个 REST API,甚至还有一个 Rails plugin,因此您可以将它与您的应用程序集成。它可能是一个很好的示例代码库,甚至可以替代您正在尝试构建的代码库。

    希望我的回答有所帮助,

    迈克

    【讨论】:

    • 是的,但我也可以使用 DRb(分布式 ruby​​),这更容易。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-02
    • 1970-01-01
    • 1970-01-01
    • 2011-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多