android - 将 Amazon RDS 与 Android 应用程序结合使用

标签 android mysql amazon-web-services amazon-ec2

背景
我有一个 EC2 实例,并有一个与其关联的 RDS 实例(MYSQL)。 我想使用Android应用程序在该MYSQL实例上执行查询。亚马逊的Android sdk不支持RDS。
问题
如何将我的 Android 应用程序与 RDS 实例连接?是否可以在没有 sdk 支持的情况下将 RDS(MYSQL) 与 Android 应用程序一起使用?

最佳答案

RDS 不是数据库引擎。它是一项为您管理维护高可用性和容错数据库所需的基础架构的服务。它支持许多不同的引擎,例如您提到的 MySQL。请阅读docs了解更多信息。

您需要像连接任何 MySQL 数据库一样连接到 RDS MySQL 实例。使用支持 MySQL 的库,并使用数据库的主机名、用户名和密码。

但是,让电话客户端远程连接到数据库可能不是最佳设计。最好的办法是在 AWS 上放置一个与您的数据库交互的 REST API。

让 n 个用户使用您的应用程序从每部手机连接到您的数据库可能是一个坏主意。这意味着您需要在数据库中拥有更多功能,这极大地阻碍了您的可扩展性,并且随着数据库暴露在互联网上而降低了安全性。有了前面的 API,您就可以构建一个容错性更强、可扩展性更强的解决方案。

构建移动应用程序的“云方式”是(在合理范围内)在云上构建应用程序逻辑,然后简单地将客户端代码连接到 API。通过这种方式,您可以更轻松地扩展到更多平台(例如 IOS、Web),因为您不必为每个平台管理单独的应用程序级代码。您只需要管理与现有 API 集成的代码。

看看这个 whitepaper 。忽略 Web 服务器层,重点关注应用服务器和数据库层。这可能是最好的设计。

关于android - 将 Amazon RDS 与 Android 应用程序结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35542693/

相关文章:

android - 使用 monkey runner 验证

Android:如何加快 GridView 的滚动速度?

java.lang.SecurityException : Can not make a java. lang.reflect.Method 构造函数可访问

MySQL "filegroup"?

ssl - 如何在CloudFormation模板中将预先上传的SSL证书附加到ELB?

amazon-web-services - 如何为 aws gateway API 创建预签名 URL

android - 使用 picasso 下载和保存图像

php - "SELECT"命令的准备语句失败,在 PHP 中使用 mysqli

python - aws Sagemaker 的 AnnotationConsolidation lambda 事件的空字典

MySQL - 如何根据另一个表中的条件计算一个表中的条目(何时除外)