Обновил webstartpage.ru

Ночью появилось настроение взять и оптимизировать мой первый "Revolutioнный" проект - Стартовая страница.
Этот сайт я делал несколько раз, на Evolution, дважды и на Revo - нынешний вариант. Именно на нём я изучал xPDO, придумывал, как половчее запускать ajax запросы и написал свою первую страницу в админке, для управления таблицей со ссылками.
Сайт нужен лично мне и моим знакомым, как домашняя страница браузера, где есть всё необходимое: поиск, погода и ссылки на любимые страницы. Основной плюс - авторизация и сохранение настроек, что гарантирует нормальную работу с любой точки планеты без настройки браузера.
Многие не понимают, зачем нужен сайт, однако ему уже 3 года и за это время сформировалась небольшая, но стабильная аудитория.
Конечно, внутри сделано всё довольно плохенько, по современным меркам, поэтому давно чесались руки потратить несколько часов и переделать узкие места.
Сегодня ночью, наконец, я это сделал:
  • обновил MODX до 2.2.7
  • переписал все getCollection на PDO
  • реорганизовал скриншоты, добавил поддержку ретины
  • избавился от PhpThumbOf
  • удалил старых юзеров, которые полгода не заходили на сайт
  • удалил неиспользуеммые ссылки - а это оказалось 2/3 от всех ссылок на сайте
  • вернул обновление картинок для популярных ссылок по cron
  • минифицировал все скрипты и стили, оптимизировал шаблон и чанки
Итого: 6 часов работы - и сайт отдаётся за 2-3 десятых секунды, что для стартовой страницы необходимо. Раньше было 1,5 - 3 сек =(.
Обратите внимание на повторную загрузку - всё отдаётся из кэша.
Тест показывает цифры, значительно выше, чем в браузере, поэтому сравниваем с известным ресурсом - yandex.ru:
Как видно, http://webstartpage.ru быстрее работает =)
В общем, очередное доказательство того, что кривые руки способны испортить любой проект и скорость движка, как такового, не особо важна.
Только знания, только опыт решают, быстро будет грузиться ваш сайт, или нет.

27 комментариев

Ну что сказать, повезло с женой, что дает работать и ночью =)
Василий Наумкин
А что, бывают жёны, которые запрещают мужьям деньги в дом приносить?
Это же нонсенс!
Ну я свою с трудом,но приучил=)Ей к примеру наплевать на деньги,лишь были вместе=)А рай типо можно заколотить и в шалаше)) Ну я так не считаю,поэтому так же работаю.Но не без проблем=)
Василий Наумкин
Распространённое занятие - рассуждать о шалаше, сидя в благоустроенной квартире\доме.
А вот когда помыться нельзя толком - какая любовь? Пирамиду потребностей никто не отменял: сначала низменное, потом духовное.
Это ж наша работа, чтобы жёны даже не задумывались, откуда что берётся, а просто витали в облаках.
Alex Vakhitov
Поддерживаю, хоть все это и бессмысленная сансара, но без этого никак. Вообще сам не очень люблю ночью работать, но приходится, особенно когда с заказчиками 12 часов разницы, а с женой решили так что каждый день 2-3 часа на совместные прогулки по лесу, вроде и вместе и полезно (:
Василий Наумкин
Мы с женой уже 2 года вместе дома работаем, каждый на своём фронте.
Я деньги приношу, она обеспечивает надежный тыл и комфорт. Семейный подряд!
Alex Vakhitov
Прикольно, только недоконца понимаю зачем он нужен (: как по мне стартовая страница вообще не нужна, проще открывать прошлые сайты, а новая вкладка как правило создается для чего то определенного. А для погоды и всего такого есть виджеты в dashboard
Василий Наумкин
Многие не понимают, а как привыкнешь - за уши не оттянуть.
Лично я хожу по определённым сайтам каждый день, и чисто механически привык тыкать в определённые кнопки на стартовой странице.
Как то помню, пару дней сайт не работал - так человек 6 позвонило, с криками -"у меня интернет не работает!". Без стартовой страницы на одноклассники никак не зайти =)
Alex Vakhitov
Теперь все понятно (: просто я комп только для работы использую и на нем редко серфлю, а для просмотров сайтов и пожирания контента планшет удобней, а в нем в основном нативные приложения и несколько вкладок хрома, поэтому я не в фокус группе
Алексей
В тексте статьи последняя ссылка на сайт битая!
Василий Наумкин
Спасибо!
Пальцы судорогой уже сводит =(
Alex Vakhitov
Кстати у тебя внизу js не закрытый, вон как выглядит
Василий Наумкин
Спасибо!
Вот для этого я и показываю, что делаю - вечно что-то находите!
Отличный сервис, пользуюсь чуть ли не с момента его появления. (кажется на хабре его увидел первый раз, но могу ошибаться) Жаль вот только что где-то около месяца назад сломалась авторизация через twitter у loginza, пришлось через гуглоаккаунт логиниться и заново забивать все ссылки. :/
Василий Наумкин
К сожалению, нет нормального способа мигрировать с Loginza на HybridAuth.
Поэтому, пока так. Если буду переделывать проект серьёзнее - сменю и авторизацию.
Мордынский Николай
Василий, а можешь последний вариант компонента погоды который под revo Работает выложить, что бы его в самообразовательных целях по терзать можно было?
Василий Наумкин
Мордынский Николай
спасибо
А что за зверь ретина?
Василий Наумкин
Это такие экраны от Apple, с повышенной чёткостью.
Чикин Артур
Подправьте
Конечно, внутри сделано всё довольно плохенькл,
на плохенько
Василий Наумкин
Готово!
СикретНаме
"Это такие экраны" - улыбнуло :0)
Андрей И.
http://hackasaurus.org/en-US/goggles/ у вас на эту страницу скрин не делает. Хотя на s-shot.ru делает
добавлено: Нашел баг: Он переводит урл в нижний регистр.
Василий Наумкин
А как избавиться от дубликатов адресов, которые народ в капслоке набирает?
Так что да, есть такой недостаток - привожу всё к одному регистру. MODX, кстати, нормально понимает адреса независимо от него.
Андрей И.
тут не угадаешь.... хотя можно только домен приводить к нижнему регистру. Думаю в этом случае дубликатов почти не будет.
Василий Наумкин
Ну, цель была ускорить загрузку, а не улучшить весь проект.
Если буду переделывать полностью - учту и этот момент, спасибо!
bezumkin.ru
Personal website of Vasily Naumkin
Прямой эфир
Василий Наумкин
01.07.2024, 11:56:41
Да, верно, именно так. А в контроллере, скорее всего, ловить данные методом post.
Василий Наумкин
26.06.2024, 09:38:15
О, точно, вылезает если не залогинен. Спасибо, исправил!
Василий Наумкин
09.04.2024, 04:45:01
> Ошибка 500 Это не похоже на ошибку Nginx, это скорее всего ошибка PHP - надо смотреть его логи. ...
Futuris
04.04.2024, 08:56:12
Я просто немного запутался. Когда в абзаце "Vesp/Core" ты пишешь про "новый trait FileModel", я поду...
Василий Наумкин
20.03.2024, 21:21:52
Volledig!
Андрей
14.03.2024, 13:47:10
Василий! Как всегда очень круто! Моё почтение!
russel gal
09.03.2024, 20:17:18
> А этот стоило написать хотя бы затем, чтобы получить комментарий от юзера, который ничего не писал...
Александр Наумов
27.01.2024, 03:06:18
Василий, спасибо! Извини, тупанул.
Василий Наумкин
22.01.2024, 07:43:20
Давай-давай!
Василий Наумкин
24.12.2023, 14:26:13
Спасибо!