Android和iOS应用的后端

3
我正在开发一个系统,包括iOS和Android应用程序。我有两种方法:
1- 我考虑使用MySQL作为后端,然后使用REST in java using jersey将我的资源传输到应用程序。
2- 目前我听说了Parse,它被认为是在移动应用程序中添加后端的简单方法。它让移动开发人员编写无需服务器的服务器代码。
你的建议是哪个?请用适当的理由和个人经验支持你的答案。

你的后端将拥有什么类型的数据? - Raghav Sood
我需要保存任意数据,保存照片和其他文件。创建用户帐户并添加Facebook登录。我认为它们都被parse支持,但顺便问一下优缺点。 - Ali
3个回答

3
如果你想跟上潮流,可以使用node.js和MongoDB。(虽然MongoDB不再时髦了,但它允许任意长度的二进制文件,并且运行很好。) PHP与MongoDB也很好用。
我的理由是它们是广泛使用的技术,并且门槛很低。除非你想维护你的JVM,否则应避免使用Java。

欢迎您。无论您是否需要回答自己的问题,请告诉我们您选择了什么。 - alexfernandez
一个iOS应用程序如何通过Parse与Node.js服务器通信?还是有其他方法? - s_curry_s

2
假设您典型的移动应用后端涉及一个或多个REST API,并提供服务器端功能,如用户身份验证、通信(例如聊天、消息)或持久性(例如游戏排行榜或检索地理位置相关数据)。您基本上有两个选择,自己构建或使用后端即服务平台。
自己构建(优点):
- 您保留所有知识产权 - 您具有最好的定制水平
自己构建(缺点):
- 如果您缺乏服务器端编码经验,则学习曲线非常陡峭 - 实施时间较长,如果需要更改某些内容或添加功能,则难以快速迭代 - 缺乏经验会带来更高的关键问题风险(例如安全漏洞、可靠性等) - 部署后需要监控和维护系统。如果应用程序足够大,则可能会成为一项全职工作。
后端即服务平台(优点):
  • 快速启动和运行。如果您正在推出新产品并希望验证市场,这是一个重要的优点。

  • 受益于构建平台的服务器端开发人员多年的经验。

  • 通常,平台会提供已经实现所需功能的预制组件。

  • 后端的运行和操作作为服务的一部分包括在内,您不需要担心它。

  • 如果考虑到时间投资,或者如果您雇用后端开发人员来构建它,实际上比自己实现更便宜。

  • 它允许您将精力和时间集中在客户端应用程序上,这通常是您最有可能区别自己的地方。

后端即服务平台(缺点):

  • 根据平台的不同(有些平台比其他平台更好),您的灵活性较小。

  • 通常会有一些重复成本(尽管如果您自己构建它来运行服务器和数据库,则也会产生一些成本)。

  • 提供商关闭的风险始终存在(例如 Parse),这时您需要寻找替代方案或自己重新构建。

现在有许多后端即服务平台可供选择。不幸的是,Parse 不再是其中之一,因为它已被 Facebook 收购并随后关闭https://www.computerworld.com/article/3027537/application-development/facebook-is-closing-down-its-parse-developer-platform.html

我认为,如果你在服务器端没有太多经验,或者时间有限,想把注意力集中在客户端应用上,那么后端即服务平台是一个不错的选择。其中最大的好处之一就是快速迭代。如果你发现你的功能没有达到预期,你可以尝试改变它,并且相对较小的投资就能快速实现。这里可以找到一些后端服务提供商的例子https://en.wikipedia.org/wiki/Mobile_backend_as_a_service
其中一些平台实际上允许你构建一个完整的自定义应用程序,而无需编写任何代码,而另一些则提供现成的组件(如聊天、排行榜等),但灵活性较差。
以下是一些后端即服务提供商的列表:

1
我参与了一个iOS/Android应用程序的开发。我们使用了一个在Tomcat 7上运行的作为Web服务的Java编码服务器,配合MongoDB数据库和JSON解析进行通信。虽然不是最好的解决方案,但它确实能够正常工作。

谢谢,我可以了解一下你的服务器吗?您是如何在服务器上启动运行Tomcat中Java代码(可能是在Eclipse中)的呢? - Ali
我没有在服务器上做过太多的工作,但我可以告诉你我们是在Eclipse中开发的,并将其导出为war包。然后Tomcat有一个Web接口,在那里你可以发送文件并以特定地址启动服务器(例如,如果你正在本地运行,则为localhost:8080/myserver)。这回答了你的问题吗? - rdurand
嗯,我知道如何在本地主机上运行它,我想了解一下你们的真实服务器。你们是如何设置数据库和 Web 服务的呢? - Ali
我们运行了Linux Ubuntu,并安装了Tomcat和MongoDB,在Tomcat中本地上传了我们的.war文件。我们的Java服务器自动在Mongo中创建了集合和表格。 - rdurand
你的回答并不完全符合我的需求,因为我需要听到有关 Parse 的经验,但是顺便给你一个加一的赞,感谢你与我分享你的经验。谢谢。 - Ali
1
就像我说的,这只是我的个人经验,肯定不是最好的选择... 我也听说 Parse 很不错。Ray Wenderlich 在 Parse 上有一个非常好的教程:http://www.raywenderlich.com/15916/how-to-synchronize-core-data-with-a-web-service-part-1(这是第一部分,你可以在教程结尾找到第二部分)。祝你的项目好运 :) - rdurand

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接