数据库服务器在 2 个 16 核 CPU 还是 4 个 8 核 CPU 上运行性能更好?

Ale*_*lex 6 performance database multi-core

我拥有的:

  • 一个在线金融应用程序(ASP.NET,C#)
  • 在高峰期,我们有 5K+ 并发用户
  • 后端在 Oracle 11g 上运行(活动服务器 + 使用 Active Data Guard 备用)。高峰期 - 4K-5K 数据库会话
  • Oracle 安装在 Linux 5.8(Oracle 的牢不可破的版本)上
  • 数据库大小:7TB
  • 磁盘存储:NetApp(连接10GB网络)

我想更换旧服务器(IT 将购买 HP 刀片 BL685C)。服务器将有 256GB 的 RAM。

我需要你的帮助来弄清楚如何处理 CPU 和内核。选项:

  1. 2 个 CPU (2.3 GHz),每个 CPU 16 个内核
  2. 4 个 CPU (3.0 GHz),每个 CPU 8 个内核

问题:我应该选择哪一个?

PS 明年,我们将从 Oracle 迁移到 SQL 服务器。我希望,您推荐的任何选项都适用于两个平台

Dav*_*rtz 10

您需要查看两个因素:

  1. 总聚合性能:这是对盒子上所有核心的总计算能力的衡量。您可以通过查看CPUPassmark CPU 等级并乘以系统中物理 CPU 的数量来估算此值。

  2. 单线程性能:这是衡量 CPU 可以为单个线程提供多少计算能力的指标。您可以通过查看CPUPassmark CPU 评级并除以 CPU 中的内核数来估计此值。(对于超线程 CPU,除以物理内核数的 1.25 倍。)

如果一台机器在这两项指标上均胜出,则它可能是您的最佳选择。如果它在这两个度量上分开,那么归结为您的软件可以如何有效地利用多个内核。

请注意,内存性能也很重要。更多的内存通道通常意味着更快的内存访问。当然,内存总量也很重要。不同的 CPU 通常意味着不同的主板,这可能意味着不同的内存性能。