Всё о породе
Ньюфаундленд

Логин:
Пароль:
Обратите внимание:
Случайное фото:
Превью фото № 1613
СобакаЕсть 1 фотоДара
Поддержать проект Ньюфы.ру
Вы здесь: Ньюфы.инфо / Персоны / Соziдатель / Заметки разработчика / Оптимизация скорости работы сайта

Оптимизация скорости работы сайта

Соziдатель
30 июня 2010 в 16:42
Тут личное, программёрское, не ругайтесь, если не понятно :-)

Подготовив новый раздел и, ожидая когда же мы его опубликуем, по инерции продолжил работать над Ньюфами.ру. Но на этот раз не реализуя новые или переделывая старые функции, а изучая и исправляя старые.

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

Было удалено много неиспользуемых функций, улучшено кеширование практически всех элементов, и, главное, найдено узкое место!

Чтобы я не делал, как бы не оптимизировал, но страница на сервере создавалась большее, чем за 2 секунды время. А это очень долго. Очень-очень. Недопустимо долго.
Я смирялся с этим, думая, что сайт в целом слишком навороченый, и эти секунды складываются из многих мелких операций.

Оказалось, что не так.

Обнаружил, что скрипт, ответственный за отображение чата, был написан не оптимально. Так, как это подходило, когда сообщений в чате было 10-ки тысяч, но не сотни.
Именно невинное отображение последних 15 сообщений и занимало 2 секунды с лишним. После рефакторинга эта же операция занимает (внимание!) - 0,002 секунды!

Ура! Ура! Ура!

Комментарии

1. каприз
30 июня 2010 в 17:00
Все,что на пользу сайту-РАДУЕТ!!!
Женя-СПАСИБО!!!
2. belk
30 июня 2010 в 18:36
а вот лента сообщений открывается минуты по 4, а то и дольше... Это что? Навороченность форума или узкое место тоже когда-нибудь обнаружится?
3. Соziдатель
30 июня 2010 в 22:47
Белк, ну не владею я телепатией :-(
Сколько говорить.
Я не знаю, какую именно ленту сообщений ты имеешь в виду.
Лента всех сообщений из всех дневников, лента дайджеста, лента всех сообщений из форума, лента сообщений в форуме определённого лица, лента топиков определённого лица, история чата и может быть еще и еще куча вещей, которые можно называть этим словосочетанием.

Если есть ошибка, надо описать всё, чтобы я тоже мог на неё напороться, или понять, как напарывается другой человек.
Как минимум, нужна ссылка.
4. belk
30 июня 2010 в 22:52
Ты перечислил СТОЛЬКО лент..... я тоже не телепат, не знаю я ничего про них :) Я знаю одну - единственную, ту, которая под форумом. Которая "лента всех сообщений" форума.
5. Соziдатель
30 июня 2010 в 23:23
Телепатом и не надо быть. Перечислил именно для примера непонятности. А вот ссылка, напротив, многие вопросы снимает.
Напиши ты "Соз, а вот тут лента http://newfs.ru/forum/message/all/?page=7546 грузится очень долго", я бы сразу понял про что идёт речь. Не тяжело же, ссылку скопировать и вставить.

По теме: да, там узкое горло той же природы, только так элегантно и просто, как с чатом не решается.
Но я там тоже в меру возможностей пока подправил.
У меня страница генерировалась 30 секунд, теперь меньше двух.

Информацию о времени создания страницы (сколько это времени заняло на сервере) можно увидеть внизу слева, под счетчиками.
6. AldrA
2 июля 2010 в 21:08
можешь удалить мой коммент!

Наблюдать за новыми комметариями.

Чатик
3 февраля 2026
10:39 belk: И ни в один дневник не зайти
10:39 belk: И ни в один дневник не зайти
10:39 belk: И ни в один дневник не зайти
8 февраля 2026
09:57 Bonny2009: Всем доброе утро! Может кто подскажет, где сейчас можно купить компрессор?
16 февраля 2026
16:33 Alla: Bonny2009 Поздновато, наверное, но на вайлдберис есть компрессоры LanTun. Бирюзовые такие.
18 февраля 2026
10:52 Bonny2009: Спасибо:) на Озоне нашла
26 февраля 2026
16:14 Соziдатель: Надо что-то делать
9 марта 2026
13:46 victor: Сегодня Александру Филатову день рождения. Фил, поздравляем, будь здоров!
13:46 victor: Сегодня Александру Филатову день рождения. Фил, поздравляем, будь здоров!
13:47 victor: Сегодня Александру Филатову день рождения. Фил, поздравляем, будь здоров!
11 марта 2026
02:54 Соziдатель: belk, что значит не зайти ни в один дневник?
13 марта 2026
12:18 Соziдатель: Проверка
12:18 Соziдатель: Ок, в чате стало чуть лучше.
16:54 Соziдатель: Проверяем дальше
15 марта 2026
20:29 Соziдатель: Дневники, кстати, тоже починил.
Статистика сайта
0.797 s, 165 q
© 2006 Ньюфы.ру
// Редактор: Кирилл Ермаков
// Программист: Евгений Ненаглядов
Обратная связь
Правила Сайта