【问题标题】:Server-Side design options for mobile application移动应用程序的服务器端设计选项
【发布时间】:2012-08-24 01:13:08
【问题描述】:

我是移动应用程序开发的新手,想从这里的专家那里了解他们如何处理服务器端设计。我需要支持跨平台客户端(iOS、Android、Windows)并需要可扩展的后端架构。

  • 广泛部署的服务器端策略有哪些
  • 是否有任何特定于移动的开源服务器端技术可用。
  • 人们考虑移动应用后端的哪些因素。

【问题讨论】:

    标签: java android iphone mobile


    【解决方案1】:

    我同意上述答案的一半。您应该使用 REST 架构——这是最直接的方法。我将 Ruby on Rails 用于我的移动项目。可以快速开始构建服务器代码,并且几乎可以立即看到它在 heroku.com 之类的地方运行。

    所以我会选择以下内容:

    • 轨道上的红宝石 - 值得您花时间学习
    • heroku.com 用于部署/或 EC2(如果您选择 Rubber gem)
    • 如果您了解一些 python / java,Google App Engine 是另一个不错的选择
    • REST 架构
    • 使用 Amazon S3 存储所有重图像等。他们有一些很棒的 SDK 可供使用。
    • 获取一些 JSON 库来与您的服务器通信

    在 iOS 上:

    • 使用MKNetwokKit(它将为您省去很多麻烦。它可以帮助您进行缓存,并且它是一个很好的架构)。
    • 如果应用程序很小,请尝试基于 NSArchiver 而不是 CoreData (SLOWWW) 的数据模型。 Mogenerator 是一个好的开始(这与服务器无关..)

    如果您讨厌编写服务器端,我建议您查看 Parse.com。完全移动开发,为您处理所有服务器代码。对于大型项目,您确实应该编写自己的服务器内容。

    我会考虑一些额外的事情:

    • 安全性如何工作?只是 HTTP 标头中的会话令牌?
    • 分层您的应用 -- 网络/MVC
    • 离线时会发生什么? - 这是我们在没有及早考虑后正在处理的问题 - 痛苦。

    【讨论】:

      【解决方案2】:

      我在使用 REST Web 服务和 XML 数据创建服务器方面取得了很好的成功,但我建议改为使用 JSON。您可以使用 Java 创建它并使用 Tomcat 托管它。这被多种移动甚至非移动技术广泛部署和广泛使用。

      需要考虑的几个因素: * 您可能希望它在 DMZ 中并且可以访问 Internet,因此请考虑防火墙、反向代理和通过 SSL 进行的加密。 * 您将托管服务器还是将服务器出售给客户?托管很容易。如果出售,还有更多的考虑因素。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-09-27
        • 2012-02-27
        • 1970-01-01
        • 2013-09-29
        • 1970-01-01
        • 1970-01-01
        • 2015-11-29
        • 1970-01-01
        相关资源
        最近更新 更多