У меня есть какой-то веб-сканер с PHP, который сканирует Интернет и хранит информацию о страницах в базе данных, теперь дело в том, что загрузка страниц занимает много времени, и, кроме того, мой скрипт спит до 5 секунд между каждый запрос, в то время как соединение с сервером MySQL все еще открыто, у меня слишком много спящих процессов MySQL.
Я думал, поскольку каждый экземпляр моего скрипта живет около 20 секунд и выполняет не более 3-4 запросов MySQL, может быть лучше с точки зрения производительности закрыть соединение с MySQL и повторно открывать его с каждым запросом, я подумал, прежде чем тратить свое время на редактирование кода, я мог бы спросить вашего совета по этому поводу, имею ли я смысл?
Это зависит.
В общем, создание сеанса требует слишком малых накладных расходов, чтобы беспокоиться о нем, но если сеансы создаются одним и тем же процессом, разумно сделать сеанс (ы) постоянным. Если сеансы устанавливаются разными процессами и скорость соединения достаточно высока, вы можете выйти за установленные пределы с большим количеством незанятых сеансов. В этом случае вам необходимо немедленно закрыть неактивное соединение.
Если ваш сервер MySQL используется локальным веб-сервером, вы можете подключиться к нему через файловый сокет вместо IP-сокета. Это немного более быстрый метод, но количество одновременных подключений по-прежнему ограничено той же опцией сервера.