Y
Y
ya_yshel_rabotati_v_teleg2016-08-01 20:09:32
linux
ya_yshel_rabotati_v_teleg, 2016-08-01 20:09:32

What is better to select many queries through 1 mysql connection or a separate one for each query?

What is better to select a lot of queries through 1 mysql connection or a separate one for each query?
what will work faster and load the server less?

Answer the question

In order to leave comments, you need to log in

4 answer(s)
Z
zapimir, 2016-08-01
@zapimir

Соединение с MySQL не "бесплатное" с точки зрения времени.
Так как помимо соединения, происходит "хендшейк" и аутентификация пользователя, кроме того зачастую еще идет запрос с выбором кодировки соединения, а только потом сам запрос. Т.е. получается 6 пакетов вместо 2-х на один запрос.
Поэтому кроме особых случаев лучше использовать одно соединение для всех запросов. Несколько соединений можно использовать, если работать с MySQL асинхронно (например, делать бэкап в несколько потоков, или контролировать длительный запрос), но это уже не для начинающих.

S
sugadu, 2016-08-01
@sugadu

естественно одно соединение

Алексей Черемисин, 2016-08-01
@leahch Куратор тега Linux

Естественно пул соединений! Другими словами - одно соединение зло! Хуже, чем соединение на запрос! Так как если кто подвесит это соединение, то все встанут, более того, часто одна страница требует подзапросов в несколько потоков.
Также плохо - каждому запросу по соединению, так как это неконтролируемо.
Вам же нужен пул соединений php.net/manual/ru/pdo.connections.php
Это самый правильный подход к работе с любой базой данеых, ну, почти с любой.

C
ComatoZZZ, 2016-08-02
@ComatoZZZ

+1 за пул. Можно использовать Apache DBCP

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question