Назад | Перейти на главную страницу

Миллионы запросов и MariaDB против PostgreSQL

Я не прошу сравнения. Я уже знаю, что такое PostgreSQL и MariaDB и чем отличаются.

Я смотрю на этот вопрос с другой стороны. Такие компании, как Facebook использует MySQL (конечно, исправлены), но как они могут обрабатывать миллионы запросов?

Чтобы быть более ясным; PostgreSQL имеет PgPool инструмент, который кэширует и повторно использует текущее соединение для всех, так как данные клиентов одинаковы. Итак, когда PHP приложение подключается к PgPool 10 000 раз, на самом деле оно использует несколько подключений. Это делает PostgreSQL доступным для миллионов пользователей одновременно без max connection ошибка.

Но в MariaDB / MySQL есть max_connection установка точек на 150. Означает ли это, что только 150 клиентов могут подключиться к MariaDB / MySQL с той же веб-страницы PHP? Что мне делать, чтобы обработать, например, миллионы запросов от PHP к MariaDB? Если 2 миллиона пользователей одновременно войдут на мой сайт, что произойдет, если мой max_connection является 150? Или, лучше, есть ли какой-либо эквивалент для MariaDB, например PgPool?

Какой сценарий я бы применил в этой ситуации?

Mysql (в сочетании с php) повторно использует соединение всегда, когда соединения, конечно, уже открыты. Таким образом, вы должны учитывать свое среднее время запроса (1 миллисекунда, но это зависит от вашей БД), и я надеюсь на процветание вашего бизнеса, но 150 соединений = 150 * 1000 = 150kqps ... Я думаю, что этого достаточно! Надеюсь, я дал вам хорошее объяснение.

P.S. Чтобы понять вашу текущую ситуацию, запустите эту команду на своей базе данных:

SHOW STATUS WHERE `variable_name` = 'Threads_connected';