我们目前正在将开发和生产工作转移到 AWS。我被指派创建必要的虚拟机和数据库,因此我到处阅读有关这些内容的信息,因为这是我第一次尝试使用 AWS。
首先,我注意到在某些地区无法创建无服务器 Aurora 实例。例如,巴黎不支持,而爱尔兰支持。
我们位于希腊,所以我想使用离我们最近的地区(按距离),那就是巴黎地区。所以我在那里创建了一个普通的 Mysql 数据库,没有意识到无服务器选项是不可选的。然后我读到,无服务器实例不能被外部主机访问,只能从同一集群内的 VM 或要使用的 ssh 隧道访问。只是因为我们一直在使用位于 ssh 隧道后面的私人服务器,而且一开始连接起来很麻烦,所以我不太喜欢它。更不用说我花了很多时间在我的 java 应用程序上为它设置 jdbc 连接。对吗?
所以,真正的问题是,
- 无服务器方法值得尝试吗?它比其他选项更好吗?
- 无论如何,无论是否无服务器,其余虚拟机都应该位于同一区域/集群上?我猜如果一切都在同一个区域,速度会更快,但有什么理由将流程分散到不同的区域吗?
- 通过使用无服务器,我会根据所使用的电量付费。因此,我可以选择最大可用内存,如果不使用,则收取较少的费用。其他选项是否也适用同样的规定?
- 在无服务器选项可用的区域,我可以选择
Provisioned
和Provisioned with Aurora parallel query enabled
,而在巴黎区域,我没有这样的选项。我猜没有选项是因为Provisioned
默认选择了。我说得对吗?
提前致谢,Ilias
答案1
Aurora 无服务器适合不常用的数据库. 坐在里面的东西开发/测试并且只会偶尔被访问。例如,我不建议在公共网站上使用这种方法,因为当数据库空闲后第一次被访问时会产生一些时间开销。这可能会导致相当糟糕的用户体验。
如果我是你,我会在你喜欢的任何地区使用标准的非无服务器 Aurora。一旦你适应了这一点,你可以考虑切换到无服务器 Aurora适用于非生产环境,但为了便于使用,请从正常环境开始。
关于您的其他问题:
爱尔兰 vs 巴黎地区
我怀疑你会注意到在巴黎、法兰克福或爱尔兰运行工作负载之间的差异。欧洲互联互通,延迟差异很小。此外,如果你正在部署网站,你可以通过使用云锋内容传送网络。
其余虚拟机应该位于同一区域/集群?
将它们全部放在同一个地区因为这将使您的网络连接更加容易。同一区域中的资源可以相互通信(如果它们位于同一 VPC - 虚拟私有云中)。不同区域中的资源需要设置 VPN 或 VPC 对等才能相互通信 - 除非您有一些高级需求,否则这可能不值得麻烦。
的选择已配置和已启用 Aurora 并行查询
除非你正在做一些大数据分析,否则你很可能不需要并行查询。继续使用标准已配置数据库。
希望有帮助:)