- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Привет, использую sqlite как модуль php. Создал таблицу, расставил индексы, задампил данные.
Тестирую скорость выполнения выборки, время ~0,01 сек. Всё отлично, устраивает!
Оставляю на ночь(ничего больше в неё не добавлялось, вообще бд не трогалась). На следующий день запускаю опять ту же выборку, время выполнения ~2,00 сек. Непорядок!
Удаляю таблицу, опять создаю, делаю дамп данных. Тестирую выборку, время ~0,01 сек. Подумал может кеш какой-то влияет. Копирую бд, на сервер, делаю выборку ~0,02. Всё, оставляю бд не тронутыми. На следующий день проверяю, на локалке опять ~2,00 сек выборка. Отправляюсь тестировать на сервер, там время ~2,5 сек. Если честно я в замешательстве, может кто-то может объяснить, откуда такой прирост во времени? В какую сторону копать?
время выполнения php скрипта или время выполнения самого запроса? размер бд?
время выполнения php скрипта или время выполнения самого запроса? размер бд?
Ну можно сказать, что время выполнения php скрипта, запрос из него делаю и соответственно тайминг тоже в нём делаю. Размер БД 50 мб.
при первом запросе файл БД кэшируется операционкой, последующие выполняются с кэшированным файлом, а через какое-т время кэш вытесняется из оперативки - как вам версия? проверьте время выполнения первого запроса (после рестарта сервера) и последующих после него для проверки.
попробуйте этот скрипт php с командной строки выполнить (чтобы исключить влияние всяких кешей-ускорителей), изменится ли результат?
при первом запросе файл БД кэшируется операционкой, последующие выполняются с кэшированным файлом, а через какое-т время кэш вытесняется из оперативки - как вам версия?
Тоже думал об этом, но как описал в первом посте, БД бала скопирована на другой копм(сервер). В первый день, и там и там время запроса не большое, при том, на сервере даже при первом запросе 0,02 сек. На следующий же день, возрастает. Повторное выполнение скрипта, не даёт желаемого результата.
Ещё была теория, что кэш запросов может хранится в самом файле бд. Но размер файла не изменился.
---------- Добавлено 27.01.2016 в 18:04 ----------
попробуйте этот скрипт php с командной строки выполнить (чтобы исключить влияние всяких кешей-ускорителей), изменится ли результат?
С коммандной строки, такое же время, ~2 сек.
Пересоздал бд, запустил с CMD ~ 0.02 сек.
странно конечно. А если непосредственно через утилиту sqlite запросы делать, то же самое происходит?
странно конечно. А если непосредственно через утилиту sqlite запросы делать, то же самое происходит?
Да это и вправду кэш. Если перезагрузить комп, то кэш сбрасывается. Но прикол в том, что если совершить операцию перемещение файла БД на компе(например скопировать в папку), то тогда бд уже оказывается закешированно в оперативку и чтение происходит не с жеского, а из оперативы. Честно говоря для меня это неждан 🤪
Да это и вправду кэш. Если перезагрузить комп, то кэш сбрасывается. Но прикол в том, что если совершить операцию перемещение файла БД на компе(например скопировать в папку), то тогда бд уже оказывается закешированно в оперативку и чтение происходит не с жеского, а из оперативы. Честно говоря для меня это неждан 🤪
А диски случайно не гибридные ? Они как раз такие финты с кешированием производят.
А диски случайно не гибридные ? Они как раз такие финты с кешированием производят.
На сервере не знаю, на локалке, да, есть ssd кеш.