анализ производительности SQL-запросов

Тема в разделе "PHP", создана пользователем SergXP, 24 сен 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. SergXP

    SergXP Постоялец

    Регистр.:
    8 мар 2008
    Сообщения:
    66
    Симпатии:
    11
    Всем Доброе время суток!

    В общем уже больше года, работаю над high-load проектом.

    Хотелось бы проанализировать запросы SQL, т.е. получить информацию по каждому запросу в виде графиков(процессор, память, время выполнения и тд).

    Существует ли такой инструмент?
    В виде класса? или это приложение?
    Необходим под WIN32.

    Спасибо. Надеюсь на вашу помощь!

    П.С. думаю это относится уже к разделу профи, но у меня покаж-то, к сожалению, недостаточно сообщений, для создания темы там :ac:
     
  2. tostrss

    tostrss

    Регистр.:
    16 окт 2007
    Сообщения:
    771
    Симпатии:
    217
    Поверь, графики тебе не нужны.

    например, если юзаешь селект, то подставь перед ним EXPLAIN он покажет тебе ВСЮ необходимую информацию о запросе.
     
    SergXP нравится это.
  3. omfg

    omfg

    Регистр.:
    4 авг 2009
    Сообщения:
    159
    Симпатии:
    46
    Насчет запросов сказали, но общую нагрузку на апач и проц в целом от действия скрипта, тебе поможет определить встроенный в апач модуль, вот есть статья:
    http://www.simplecoding.org/opredelyaem-nagruzku-na-server-apache.html
     
    SergXP нравится это.
  4. tostrss

    tostrss

    Регистр.:
    16 окт 2007
    Сообщения:
    771
    Симпатии:
    217
    Ну надо заметить, что этот скрипт тоже нагружает систему)

    ТС, для хайлоад, нужно знать нормализацию, индексы, кеширование, умение анализировать результаты explain, знание конфигов mysql, партиции )
     
    SergXP нравится это.
  5. SergXP

    SergXP Постоялец

    Регистр.:
    8 мар 2008
    Сообщения:
    66
    Симпатии:
    11
    Спасибо за ответы!
    Сервис работает на ngnix.
    Насчет EXPLAIN и кеширования понятно.

    Есть ли другие методы для тестирования проекта на нагрузку?
    Знаю есть такая программа:
    Webserver Stress Tool
    она эмулирует посетителей посылает любое кол-во запросов серверу, и проверяет скрипты на производительность. Но стоит она не дешево :(
     
  6. tostrss

    tostrss

    Регистр.:
    16 окт 2007
    Сообщения:
    771
    Симпатии:
    217
    Закажи ддос на свой сайт..на часок или просто тестовый) выйдет дешево и будешь знать реально сколько твой сайт пролежит)

    Сколько кластеров собираешься задействовать?
     
    SergXP нравится это.
  7. swer

    swer

    Регистр.:
    15 июн 2008
    Сообщения:
    308
    Симпатии:
    38
    http://www.oneclickfiles.com/go/31217077/http://hotfile.com/dl/7966198/7785f1c/Paessler.Webserver.Stress.Tool.v7.2.2.258.rar.html
    ключ внутри

    но все же хотелось бы то что собирал бы информацию о переданных запросах,количество, ресурсопотребляемость,что бы оптимизировать было проще.
     
    SergXP нравится это.
  8. tostrss

    tostrss

    Регистр.:
    16 окт 2007
    Сообщения:
    771
    Симпатии:
    217
    Посмотрите вобловский explain запросов, вы это имеете ввиду? если да, то такой легко написать, я даже писал что-то подобное. Но он не показывает нагрузку на цп
     
  9. SergXP

    SergXP Постоялец

    Регистр.:
    8 мар 2008
    Сообщения:
    66
    Симпатии:
    11
    что-то не совсем понятно... как же определить ресурсопотребляемость каждого запроса? возможно необходимо написать свой сервис/демон который бы мог отслеживать эти запросы?
    Нашел статью по explain:
    _http://habrahabr.ru/blogs/mysql/31129/
     
  10. tostrss

    tostrss

    Регистр.:
    16 окт 2007
    Сообщения:
    771
    Симпатии:
    217
    Вот посмотри эти ссылки

    http://www.verotessile.com/forum/?explain=1
    http://sat-tv-free.net/forum/?explain=1
    http://sat-tv-free.net/forum/?explain=1


    Это родной explain форума Vbulletin.

    Показывает запрос, время выполнение, занимаемую память, кол-во запросов и саму таблицу explain. Этого хватит, чтобы понять что нужно оптимизировать. Выдернуть оттуда этот класс у тебя врядли получится, а написать можно легко, добавив еще немного функционала. Дерзай.
     
    SergXP нравится это.
Статус темы:
Закрыта.