Postgres може масштабувати до тих самих процесорів, скільки ви хочете встановити, і ваша ОС може ефективно працювати з ними. Ви можете встановити Postgres на 128-ядерну машину (або навіть машину з 128 фізичними процесорами), і вона буде добре працювати. Це може працювати навіть краще, ніж на 64-ядерній машині, якщо планувальник ОС може обробляти такі ядра.
Показано, що постгреси лінійно масштабуються до 64 ядер (із застереженнями: ми говоримо про ефективність читання в певній конфігурації (диск, оперативна пам’ять, ОС тощо) - Роберт Хаас має статтю в блозі з гарним графіком, який Я відтворив нижче:
Що важливо в цьому графіку?
Відносини лінійні (або майже так) до тих пір, поки кількість клієнтів менше або дорівнює кількості ядер , і тоді починається те, що виглядає приблизно як лінійне зниження рівня продуктивності в журналі, оскільки у вас більше клієнтських з'єднань, ніж у вас виконувати сердечники для запуску Postgres backends, тому що backends починають боротися за процесор (середнє завантаження перевищує 1,0 тощо).
Хоча це було продемонстровано лише до 64 ядер, ви можете узагальнити, що ви можете продовжувати додавати ядра (та клієнтів) та продовжувати покращувати продуктивність, аж до іншої підсистеми (диск, пам'ять, мережа), де процесів більше немає. мають проблеми із суперечливістю процесора, але натомість чекають чогось іншого.
(У Хааса також є ще одна стаття, де вони довели лінійну масштабованість до 32 ядер, яка має чудовий довідковий матеріал щодо масштабованості взагалі - дуже рекомендується фонове читання!)