A.15 MySQL 5.7 FAQ: Пул потоков MySQL Enterprise
- A.15.1. Что такое пул потоков и какую проблему он решает?
- A.15.2. Как пул потоков ограничивает и управляет одновременными сессиями и транзакциями для оптимальной производительности и пропускной способности?
- A.15.3. Чем пул потоков отличается от пула подключений на стороне клиента?
- A.15.4. Когда следует использовать пул потоков?
- A.15.5. Существуют ли рекомендуемые конфигурации пула потоков?
|
A.15.1. |
Что такое пул потоков и какую проблему он решает? |
|
Пул потоков MySQL — это плагин сервера MySQL, который расширяет стандартные возможности обработки подключений сервера MySQL для ограничения числа одновременно выполняемых операторов/запросов и транзакций, чтобы гарантировать, что каждый из них имеет достаточные ресурсы процессора и памяти для выполнения своей задачи. Для MySQL 5.7 плагин пула потоков включен в MySQL Enterprise Edition, коммерческом продукте. Стандартная модель обработки потоков в MySQL Server выполняет операторы с использованием одного потока на подключение каждого клиента. По мере подключения большего числа клиентов к серверу и выполнения операторов общая производительность снижается. Плагин пула потоков предоставляет альтернативную модель обработки потоков, разработанную для снижения накладных расходов и повышения производительности. Плагин пула потоков увеличивает производительность сервера за счет эффективного управления потоками выполнения операторов для большого числа подключений клиентов, особенно на современных многопроцессорных системах. Дополнительную информацию см. в Разделе 5.5.3, «Пул потоков MySQL Enterprise». |
|
|
A.15.2. |
Как пул потоков ограничивает и управляет одновременными сессиями и транзакциями для оптимальной производительности и пропускной способности? |
|
Пул потоков использует подход «разделяй и властвуй» для ограничения и балансировки одновременности. В отличие от стандартной обработки подключений MySQL Server, пул потоков отделяет подключения и потоки, поэтому между подключениями и потоками, выполняющими операторы, полученные от этих подключений, нет фиксированной связи. Затем пул потоков управляет подключениями клиентов в настраиваемых группах потоков, где они имеют приоритет и находятся в очереди на основе характера работы, которую они должны выполнить. Дополнительную информацию см. в Разделе 5.5.3.3, «Работа пула потоков». |
|
|
A.15.3. |
Чем пул потоков отличается от пула подключений на стороне клиента? |
|
Пул подключений MySQL работает на стороне клиента, чтобы гарантировать, что MySQL-клиент не постоянно подключается и отключается от сервера MySQL. Он предназначен для кэширования неиспользуемых подключений в MySQL-клиенте для использования другими пользователями по мере необходимости. Это сводит к минимуму накладные расходы и затраты на установление и разрыв подключений по мере отправки запросов на сервер MySQL. Пул подключений MySQL не имеет возможности видеть возможности обработки запросов или нагрузку сервера MySQL на заднем плане. В отличие от этого, пул потоков работает на стороне сервера MySQL и предназначен для управления выполнением входящих одновременных подключений и запросов по мере их получения от подключений клиентов, обращающихся к базе данных MySQL на заднем плане. Из-за разделения обязанностей пул подключений MySQL и пул потоков ортогональны и могут использоваться независимо друг от друга. Пул подключений MySQL с помощью MySQL-соединителей описан в Главе 27, Connectors and APIs. |
|
|
A.15.4. |
Когда следует использовать пул потоков? |
|
Существует несколько общих правил для оптимального использования пула потоков: Переменная MySQL Если вы используете Наконец, если ваша рабочая нагрузка состоит в основном из коротких запросов, пул потоков должен быть полезен. Для получения дополнительной информации см. Раздел 5.5.3.4, «Настройка пула потоков». |
|
|
A.15.5. |
Существуют ли рекомендуемые конфигурации пула потоков? |
Пул потоков имеет ряд параметров конфигурации, основанных на конкретных случаях использования, которые влияют на его производительность. Для получения дополнительной информации и советов по настройке см. Раздел 5.5.3.4, «Настройка пула потоков». |
© 2025 Oracle
Licensed under the GPLv2 License.