通常是否可以从源自不同 PaaS“B”的请求查询位于 PaaS“A”中的数据库(或者它是否取决于 PaaS)?换一种问法:托管在 PaaS“B”中的应用程序是否可以查询位于 PaaS“A”中的数据库?
例如,是否可以从单独托管在 Azure 上的应用程序查询驻留在 AWS 中的 DynamoDB?
如果答案取决于哪个 PaaS 是“A”以及哪个 PaaS 是“B”,那么澄清这一点仍然很有帮助。
答案1
答案是:这取决于但一般来说可以的 :)
在你的例子中DynamoDB正在使用Azure-对的,这是可能的。
您需要创建一个AWS IAM 用户有权使用您的DynamoDB并使用其使用权和秘密密钥在 Azure 托管的应用程序中。这样就可以无缝运行。前提是您的 Azure 应用程序可以访问互联网,因为 DynamoDB 是通过公共 IP 地址访问的(除非您设置了 AWS VPC 端点,但这是另一个讨论的主题)。
同样地Azure Cosmos DB和谷歌BigTable只要您提供正确的访问凭据,就可以从所有其他云以及内部应用程序使用。
那么可能会有这样的服务AWS RDS/Aurora 简介(实际上是 MySQL、PgSQL 或类似的数据库引擎,由 AWS 以服务形式管理),可能需要付出更多努力才能从外部使用。但仍然是可能的 - 您可以使用公共 IP 地址但要非常小心地设置正确的防火墙(例如 AWS 安全组)。或者在私有 IP 地址但你需要通过某种方式启用与其他云的连接VPN。
希望有帮助:)