如何将AWS Aurora RDS与Android集成

时间:2018-06-02 18:54:22

标签: amazon-web-services amazon-s3 aws-lambda amazon-dynamodb amazon-rds

我在互联网上搜索过但无法找到答案。我想使用极光,因为它比AWS的DynamoDB便宜和更好,所以我有什么方法可以使用android sdk连接极光rds或简单的MySql rds与移动应用程序。谢谢!

修改

注意:我不想直接将数据库与移动应用程序连接,只是想知道AWS与Android或IOS版本如何使用RDS的过程

并且通过Cheaper我的意思是我从博客中读到的, https://abhishek-tiwari.com/dynamodb-or-aurora/

它说:

  

具有50/50的读/写比率,我们预计每秒130,000个吞吐量。这将是每秒65,000读取或写入,仅使用最大的Aurora实例每月3340美元。现在要实现具有强一致性的相同类型的吞吐量,Amazon DynamoDB每月将花费您大约39,995美元。 这意味着DynamoDB的吞吐量比Aurora高出11倍。简而言之,Aurora吞吐量具有极高的成本效益。

3 个答案:

答案 0 :(得分:1)

你没有找到答案,这很好。

tl; dr:不要尝试让您的应用程序直接连接到您的数据库服务器。

这是一个非常糟糕的想法的原因很多,但简短的版本是它不必要地暴露你的数据库,它提供了某种形式的数据库凭证的客户端(永远不可信任),它不会扩展,因为客户端连接必须是持久的(每个连接都消耗一些有限的服务器资源,即使在空闲时),或者必须重复创建和销毁(非常低效)。

要使用Aurora,其他RDS变体或应用程序中的任何类似数据库,您需要创建并公开允许应用程序对您的数据库执行授权操作的Web服务API。

从历史上看,这可以通过应用程序服务器完成,但这是一个如何执行此操作的示例"无服务器"将创建一个或多个Lambda函数,用于解释来自应用程序的JSON请求,封装适当的逻辑,连接到数据库,以及呈现应用程序使用的JSON响应......并使用API​​ Gateway将Lambda函数公开给用于通过应用程序进行身份验证访问的Internet。

答案 1 :(得分:1)

根据OP的编辑更新答案。

  

注意:我不想直接将数据库与移动设备连接   应用程序,只想了解AWS如何使用RDS的过程   使用Android或IOS版本

使用您选择的编程语言开发一些AWS Lambda函数并连接到RDS实例。

与亚马逊Serverless Application Model (SAM)一起向您的移动应用公开API网关端点。使用上面提到的Lambda函数支持所有端点。

您可以调整超时,内存设置,缓存等以满足您的要求,并使用不同的Authorizers or user pools保护资源。

答案 2 :(得分:0)

我认为正确回答是不公平的,而不只是扼杀评论:

  1. 定义您的用例。你要存储什么样的数据?是结构化数据还是非结构化数据?是流媒体数据吗?这指定并指导您使用正确的数据存储。在AWS的特定情况下,它分别表示Aurora(或其他RDS引擎),DynamoDB甚至Kinesis。后者甚至不是数据存储引擎,但它表明您的数据决定了您应该使用的内容。

  2. 其他人已经指出你不应该直接暴露你的数据库。是否使用中间实例前端,使用"通常"陷阱,例如ELB,EC2,自动缩放,或者你只是想要一个API前端,这会引导你走向API网关。

  3. 听起来你的公司正在向你倾注,希望你学会在汹涌的海流中游泳。我强烈建议接受一些培训,包括实践。是否会让您失去认证路径取决于您,但您需要获得足够的基础知识,以便了解AWS中过多的移动部件。它可能完全令人困惑!

  4. 可悲的是,这个答案几乎没有任何直接关系到问题的实际主题!无论如何我都给了它,因为我觉得你回到实际的基础是很重要的这样你就可以更好地重新解决问题和问题了。