Как стать автором
Обновить

Комментарии 14

И мы видим из этого EXPLAIN, что на этих таблицах вообще нет никаких индексов

За это надо сразу руки отрывать таким разработчикам СУБД
Разработчики СУБД? :)

Не, не слышал.
Сейчас же модно писать на фреймворке и не думать о СУБД. :)
Абстрагироваться, так сказать. :)

Абстракция дело хорошее, но не до такой же степени :)
разработчикам СУБД

Тут не разработчики СУБД виноваты, а разработчики приложения, которые так криво используют СУБД ))
Тема оптимизации слишком велика для одной статьи, поэтому у автора получилось по верхам.
Добавлю что:

— Кроме памяти, на сервере могут кончиться другие ресурсы, например таблицы процессов, дескрипторов и TCP-соединений, что так же может вызвать ошибку 500

— Команда top не показывает очередь IO сети или дисков. А как показывает практика, IO гораздо чаще вызывает затыки, нежели например CPU. К тому же top не дает полной картины на VM.

— Nginx хорош не только для статики: если его использовать в качестве reverse proxy перед апачем, это позволит апачу заниматься тем, что он умеет лучше всего — быстро выполнять короткие запросы в больших количествах.

— Если добавить поле IS_READ в индекс в примере, то нужно быть готовым к тому, что операция UPDATE, которая апдейтит это поле, будет выполнятся существенно медленнее (примерно в 10 раз в случае MySQL). Вообще тема оптимизаций SQL заслуживает нескольких статей.

— Масштабирование — отдельную книгу можно писать.
По верхам — это это: http://blog.kpitv.net/article/сайт-долго-загружается-15421/
А тут достаточно подробно.

Вряд ли выйдет в рамках одной статьи объять все моменты (хотя Вы и сами с этим согласны). :)
Странно это. Набор совершенно обычных для разработчика методик вдруг превратился в доклад на конференции Highload и последующую статью на хабре (где эта тема поднималась много раз и в более детальном рассмотрении).
Это доклад на обучающей конференции HighLoad, у нас их две. Обучающая как раз для таких докладов.
Первое, что напрашивается – Firebug. Все знают, как им пользоваться – нажали на F12, и даже в самом старом ie он точно имеется. Воткнули Firebug, посмотрели, какие у вас там запросы, сколько страниц отдается, когда контент загрузился, и когда исполнялся какой-то скрипт.


В IE и браузерах отличных от Firefox это не Firebug, а другое средство.
Наверно лучше исправить — а то появятся тысячи начинающих программистов, которые будут думать, что в IE есть Firebug.
У IE нет консоли, как рас firebug-lite там можно поставить и будет счастье, это до 10 версии, как там с 10 уже не знаю…

Как это "нет консоли"? С 8 версии начиная вполне приличная консоль. В 7 — убогая, но тоже была.

Про firebug-lite знаю, но при нажатии F12 вызовется встроенное в IE средство отладки (даже при не установленном Firebug-lite разумеется).
Ребят, что это за зверь такой laptop? Накиньте ссылок. Невозможно загуглить.
Я думаю тут всё таки опечатка, и имелось ввиду atop
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.