2:30 - Кто знает, поясните в чем проблема вертикального масштабирования при достижении определенного порога? не считая стоимости. Почему конкуренция за ресурсы становиться выше при всё большем добавлении ядер? Речь о том что например к одной и той же странице в буфере будет выстраиваться очередь? типо большое кол-во процессоров/ядер позволяет держать много пользователей но т.к. буфер один то они ждут в очереди, я верно понял?
Да, примерно так. Вот представьте хеш-таблицу буферного кеша. Каждый процесс, обращаясь к ней, устанавливает короткую, но блокировку. Если у нас два ядра, то действительно _одновременно_ могут работать максимум два процесса; причем за свой квант времени они с какой-то вероятностью успеют и установить блокировку, и снять ее. И все работает нормально. Если у нас сто ядер, то к хеш-таблице могут _одновременно_ обратиться сто процессов, а это уже очереди и затык. Из-за этого, кстати, хеш-таблицу разбивают на несколько независимых частей, каждая со своей блокировкой. А для других структур еще как-то пытаются выкручиваться.
2:30 - Кто знает, поясните в чем проблема вертикального масштабирования при достижении определенного порога? не считая стоимости. Почему конкуренция за ресурсы становиться выше при всё большем добавлении ядер? Речь о том что например к одной и той же странице в буфере будет выстраиваться очередь? типо большое кол-во процессоров/ядер позволяет держать много пользователей но т.к. буфер один то они ждут в очереди, я верно понял?
Да, примерно так.
Вот представьте хеш-таблицу буферного кеша. Каждый процесс, обращаясь к ней, устанавливает короткую, но блокировку. Если у нас два ядра, то действительно _одновременно_ могут работать максимум два процесса; причем за свой квант времени они с какой-то вероятностью успеют и установить блокировку, и снять ее. И все работает нормально.
Если у нас сто ядер, то к хеш-таблице могут _одновременно_ обратиться сто процессов, а это уже очереди и затык.
Из-за этого, кстати, хеш-таблицу разбивают на несколько независимых частей, каждая со своей блокировкой. А для других структур еще как-то пытаются выкручиваться.
@@PostgresProfessional большое спасибо за комментарии!