Странный скачок времени выполнения скрипта. Внутреннее кэширование?

phpNovicee

Новичок
Странный скачок времени выполнения скрипта. Внутреннее кэширование?

Ситуация: пишу свой велосипед и замеряю время генерации страницы через microtime.
Создаю одну страницу без подключения к базе данных, фиксирую время: 0.0046 с.
Пишу mysql_connect, фиксирую время генерации: 0.25 с. (!)
Запрашиваю страницу ещё раз (F5), фиксирую время: 0.011 с.

Время остаётся на уровне 0.011 с. и на последующих рефрешах.

Чем можно объяснить подобный скачок?

зы - если закомментировать mysql_connect в коде, запросить страницу, раскомментировать, то скачка не наблюдается
 

phpNovicee

Новичок
я смотрю всё на своей машине.
если это важно - ос windows.
так что возможный коннекшн - один единственный.

ой, извините, прогнал. почитал про connection pool - действительно похоже. т.е. на продакшне стоит закладываться на то, что первый коннект каждого пользователя к базе будет сопровождаться лагом в 0.2с?
 

Maxsystems

Новичок
Автор оригинала: triumvirat
а правда, почему так происходит?
Как я понял из сообщения, на сервере просиходит некоторое хэширование для mysql соеденение на некоторое время, при обновление одной и тойже страницы.
 

Gas

может по одной?
ну кеширование запроса (считываемых с диска данных) тоже может быть.
 

Ravanger

Новичок
Alexandre
Может я копнул не в ту сторону, но

Если второй вызов функции произошёл с теми же аргументами mysql_connect(), новое соединение не будет установлено. Вместо этого функция вернёт ссылку на уже установленное соединение.
 

Gas

может по одной?
Ravanger
ты говоришь о ситуации когда несколько mysql_connect() вызываются внутри скрипта. Перегрузка страницы это совсем другой вариант.
 

Ravanger

Новичок
Gas
Да, согласен, не учел что соединение закрывается по исполнению скрипта
 

Alexandre

PHPПенсионер
самое вероятное - задержка связана с кешированием результатов запроса

я думал как реализовать пул коннекций, но это на мой взгляд стрельба из пушки по воробьям... хотя для Hi выигрыш в десятки долей миллисек - вполне реально...
может займусь на досуге...еще куча есть не реализованных идей...
 

phpNovicee

Новичок
Alexandre - в описанной ситуации запроса не происходит. просто mysql_connect() и скрипт заканчивается
 
Сверху