使用iOS的云存储选项

我试图创build一个后端,我可以让许多用户在我创build的iPhone应用程序之间相互沟通。 我已经尝试使用Core Data,Google App Engine,Google Cloud Storage和Amazon Web Services(RDS和Elastic Beanstalk)。 不幸的是,经过几个星期的努力才得到这个工作,没有一个会!

我一直试图联系一些能够知道像Instagram,Path和Pinterest这样的创业公司(小的时候)如何设法做到这一点的人。 但是在那里,每个人似乎都鄙视这个东西,就像我正在成长为…

我希望有人能够简单地绘制出我需要如何创build一个后端数据库,以便我可以保存和查询数据。 这意味着只有SQLite,核心数据或parsing本身不会在这里工作!

某种教程是不可思议的。

首先,CoreData和sqlite等技术通常是本地设备存储。 本地设备存储不会让你共享云存储。

Parse.com是设备访问云存储并快速启动的快速途径。 特别适用于游戏和其他移动应用程序通过应用程序ID和应用程序密钥访问云数据。 这是简单的存储,以避免创build自己的后端,如果它满足您的所有需求和要求。

当你到达一个多租户的云端后端,在那里你自己的服务和多个设备访问你的云应用程序,你需要考虑公开你的Web API。 通过http公开RESTful API非常适合设备和Web客户端。 将数据公开为JSON对于Web而言尤其方便,并且易于被设备使用。

云中的这些Web服务端点访问某种为多个客户端的并发访问而优化的后端存储。 这通常是SQL后端,如MySQL,SQLServer等…或像MongoDB , couchDB等NoSQL解决scheme…

一些前端网页API技术的研究:

  • ASP.net web api
  • Ruby on Rails
  • Node.js的
  • 等等…

一些后端存储技术的研究:

  • SQL: MySQL , SQLServer / Azure SQL ,Oracle
  • NoSQL:MongoDb,CouchDb,Amazon S3简单存储等…

如果数据被许多多租户客户端使用,则后端可以扩大(更大或更大)或被分割。 分片是将多个用户的数据分割成许多数据库或数据存储的地方,其中有一些查找algorithm用于请求查找用户数据的存储位置。 前端Web API服务器抽象后端存储。

最后,你最终需要某种caching/快速查找技术(如果你成功的话):

  • Redis :通过套接字快速存储
  • memcached :facebook使用 – 许多前端服务器内存caching中的简单键值。

你的问题是一个开放式的广泛的问题,所以开始search这些条款和技术的许多。

每个链接都有资源和教程。 获得云虚拟机,与每个虚拟机一起玩,并决定哪个最适合您的需求。 没有一个适合所有解决scheme。

Interesting Posts