AWS EC2 T4g 和 T3a 实例类型之间的区别?

AWS EC2 T4g 和 T3a 实例类型之间的区别?

我发现 AWS EC2 的 T4g 和 T3a 实例非常相似,而且价格也大致相同。性能上有什么明显差异吗?我注意到 T4g 使用基于 ARM 的处理器,而 T3a 使用 AMD EPYC 处理器,但我不知道这会如何影响性能。

我只是为我的项目托管了一个基本的 LAMP 堆栈,流量很少甚至没有。

答案1

我认为所有关于“我们不知道”的回答都是懒惰的。因为你确实知道数据库中可能有哪些类型的操作,并且至少可以提供一些有关这些类型的操作的信息。

例如,我们对 T3.medium、T3.small、T4g.medium、T4g.small AWS RDS PostgreSQL 实例进行了测试,发现当执行预计只需很短时间(约 1-5 秒)的操作时,它们的写入/读取操作速度非常相似。

然而,.medium 实例(T3 和 T4)真正突出的地方在于在大型表上创建索引并通过大型表进行文本搜索。在这种情况下,T3 和 T4 .medium 实例都比 .small 实例快 2 倍左右。在我们的测试中,T3 略胜一筹(大约 5-10%)。

因此我建议使用 T3 并根据数据库中最大的表选择 RAM 大小。

答案2

与往常一样,请根据自己的工作量进行基准测试/研究。我运行了流行的Geekbench 5与 t3.medium、t3a.medium 和 t4g.medium 进行基准测试的结果如下(分数越高越好)。

+---------------+-------------+------------+-----------------------------------------------+
| Instance type | Single Core | Multi Core |               Test result link                |
+---------------+-------------+------------+-----------------------------------------------+
| t3.medium     |         731 |        845 | https://browser.geekbench.com/v5/cpu/20702082 |
| t3a.medium    |         657 |        869 | https://browser.geekbench.com/v5/cpu/20701968 |
| t4g.medium    |         754 |       1502 | https://browser.geekbench.com/v5/cpu/20701961 |
+---------------+-------------+------------+-----------------------------------------------+

答案3

我们不可能知道这些产品在您的工作量下会表现如何。租用两者并进行测试。根据您的要求进行优化:成本、性能等等。

尽管它们在高水平上相似,但实际上它们是不同的 CPU。指令集、编译器优化、缓存配置、NUMA、制造工艺、散热和加速时钟都不同。无论这些对您来说是否具有显著差异,这就是测试的目的。但价格和性能方面肯定会至少有一点不同。

答案4

我只是为我的项目托管了一个基本的 LAMP 堆栈,流量很少甚至没有。

我认为这里要理解的关键是,如果流量很少或没有流量,这绝对不会产生影响,因此您应该选择最便宜的选项(在本例中为 t4g)。如果没有任何东西会造成资源瓶颈,那么就没有技术限制。

正如 @cherona 指出的一些非常好的指标,amd64 处理器在某些方面比 arm64 处理器做得更好,也缺少一些东西,比如原始 i/o 处理之类的东西,但它清楚地表明,如果你能处理 arm64 版本,它不仅更便宜,而且可能还会给你带来更好的整体性能。但如果你实际上没有突破任何极限,所有这些都无关紧要。

相关内容