背景
我有一个 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/