{% else-1 %}
Обновить | Подписаться | Поднять тему
Чтобы выполнить действие авторизируйтесь или пройдите регистрацию на сайте.
1. [автор] (13 янв 2013, 18:36) [0/0] [0] [отв] [спам] [под] +1 | -1

Вообщем сегодня я проводил тестирование по оптимизации MySQL запросов.Тест проходил на денвере с таблицой в которой 5 000 000 записей*

Прежде всего хочу сказать что все предыдущие статьи которые я читал на 80% не опровдали своих надежд.Да действительно некоторые запросы выполнялись быстрей,а некоторые медленей.
Из всех функций меня особо поразила функция mysql_num_rows() Эта функция подсчитует количество записей в таблице.Перейдём к делу.

Составив следующий запрос:

mysql_result(mysql_query(\"SELECT COUNT(*) FROM `table`\"*,0)

Я увидел что 5 000 000 записей посчитало за 0.004 секунды.Это очень хороший результат для такого количества записей.

Далее я составил следующий запрос:

mysql_num_rows(mysql_query(\"SELECT * FROM `table`\"*)

Я очень-очень сильно удивился.Генерация страницы составляла 4.254 секунды.Разница действительно велика.

Далее я составлял кучу запросов в которых небыло больших изменений,например:

[b]
SELECT COUNT(*) FROM `table`[/b]

И

[b]
SELECT COUNT(id) FROM `table`[/b]
Сильно не отличаются,разница приблизительно в 0.0002 сек.Или например вот:


[b]
SELECT `id` FROM `table`[/b]

И

[b]
SELECT * FROM `table`[/b]

Также как и предыдущие запросы отличаются на 0.0002 секунд.


Вывод: большого отличия во времени генерации страницы от того как составлен запрос НЕТ,но есть огромная разница в использовании функций,пример приведён выше.Также генерация зависит от вашего хостинга,например на моём хосте страницы генерировались приблизительно за 0.01 а на денвере за 0.001 Поэтому если ваш сайт долго грузится то причиной всему этому будет ваш хостинг,но не оптимизация скрипта.

2. (13 янв 2013, 18:44) [0/0] [0] [отв] [спам] [под] +1 | -1

*

3. (13 янв 2013, 18:48) [1/0] [1] [отв] [спам] [под] +1 | -1

Молодец. Полезная инфа.

4.
express * 0.02
(14 янв 2013, 10:08) [0/0] [0] [отв] [спам] [под] +1 | -1

последний пример - примитивный так как все зависит от кол-ва колонок в таблице если стоит *

5.
SV * 2.63
(16 янв 2013, 18:18) [0/0] [0] [отв] [спам] [под] +1 | -1

Чем проще- тем лучше. Велосипеды ща не в моде

  • 1 из 1
Чтобы писать сообщения авторизируйтесь или пройдите регистрацию на сайте.
Подписаны: 0
Скачать тему | Файлы темы | Фильтр сообщений