首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在流行的BaaS中使用自己的数据存储的方法

在流行的BaaS中使用自己的数据存储的方法
EN

Stack Overflow用户
提问于 2012-08-18 08:28:23
回答 1查看 1.2K关注 0票数 3

我们正在开发一个应用程序,它需要客户端(移动设备)将大小为5MB或更大的文件发送到服务器组件进行处理,我们需要一些关于以下方面的建议:

有没有办法将后端即服务(BaaS)平台与我们自己的数据存储(在我们的特定情况下托管在亚马逊网络服务中)结合起来?实际上,我们更希望客户端的文件直接发送到我们在云中的数据库,而不是存储在BaaS服务器中。

换句话说,我们需要一个BaaS平台或一种解决方案,允许解绑/绕过它的数据存储功能,这样我们就可以只将BaaS用于它的其余功能(例如客户端身份验证、rest API等)。

我们在EC2中有自己的服务器,文件的主要处理部分需要这些服务器,而且为了方便起见,我们只需要BaaS平台,它将在很短的时间内启动我们的应用程序。在大多数情况下,将文件从BaaS平台自己的数据存储拉到EC2服务器会导致总体延迟开销以及额外的带宽成本。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-18 09:31:02

在构建我的应用程序时,我也曾面临过类似的困境。在我的例子中,我不得不上传和存储用户上传的照片,而我不想自己构建一个后端。因此,我决定使用亚马逊S3来存储用户上传的照片,并使用SimpleDB,因为它比使用MySQL后端提供了更大的灵活性和易用性。现在,很明显,SimpleDB不是一个后端即服务平台,但我希望和您一样方便。

所以我建议你使用后端即服务平台,比如Parse (它有一个很好的免费增值模型),CloudMine (另一个很棒的服务,但对免费增值模型有严格的限制,即每月只有500个免费用户)或Kinvey (它将自己标榜为第一个BaaS平台,我没有太多关于它的信息,但它绝对值得一看)。并使用S3存储您的数据。这样,您就可以像您提到的那样使用BaaS进行客户端身份验证、REST API等,并且可以继续使用S3。您所需要做的就是为您的S3存储桶和对象创建一个适当的命名方案,这样您就可以轻松地识别哪个对象属于哪个用户,这可以使用基于前缀的命名方案轻松完成(因为S3不提供在存储桶中创建子文件夹的功能)。现在,当您需要提取一些客户端信息时,您可以使用客户端验证的详细信息调用您的BaaS,并且无论何时您需要访问您的数据存储,您都可以使用亚马逊网络服务提供的Android SDK调用S3,以检索属于该特定用户的对象。既然你计划使用EC2处理这些文件,那么将这些文件从S3传输到EC2应该不会花费你任何额外的带宽(我可能错了,因为我没有研究过,但据我所知,在亚马逊内部传输数据是免费的)。

如果您有其他问题,请一定要让我知道。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12014765

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档