За последние 24 часа нас посетили 20215 программистов и 1671 робот. Сейчас ищут 1457 программистов ...

Кто как ускоряет вывод своих страниц?

Тема в разделе "Прочее", создана пользователем Ensiferum, 3 янв 2012.

  1. Ensiferum

    Ensiferum Активный пользователь

    С нами с:
    11 июл 2010
    Сообщения:
    1.292
    Симпатии:
    0
    Адрес:
    из секты поклонников Нео
    Наверное немного коряво написал тему топика... В общем хотелось бы узнать, кто каким акселератором пользуется, кто каким кешем? А если будут ещё и какие-то сравнения - будет совсем чудесно. Сам пользуюсь eAccelerator, правда производительность с ним и без него не замерял
     
  2. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    Тоже его буду юзать у себя.
    Когда нужно было выбирать между eA и apc - перерыл много инфы. большая часть была в поддержку первого.
    даже котеров чтото там апач с этим еА оживлял. Тот еще некромант))

    Хотя знакомый юзает/юзал апс - вроде тоже жалоб не было.
     
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    А что оно делает? а nginx можно прикрутить?
     
  4. Ensiferum

    Ensiferum Активный пользователь

    С нами с:
    11 июл 2010
    Сообщения:
    1.292
    Симпатии:
    0
    Адрес:
    из секты поклонников Нео
    сохраняет в кеше промежуточный байт-код, избегая необходимости компиляции скрипта при каждом вызове

    Апельсин
    Читал обзоры на eA, APC и xCache. Обзоры, мягко говоря, неубедительные, потому и непонятливые. везде инфа только из частных бложиков мегакулхацкертруповервебметалпрограммистов, которые то один хвалят, то другой, то третий, ничем не подкрепляя свой выбор
     
  5. Ensiferum

    Ensiferum Активный пользователь

    С нами с:
    11 июл 2010
    Сообщения:
    1.292
    Симпатии:
    0
    Адрес:
    из секты поклонников Нео
    а кто memcahe/memcached использует?
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Кто может научить профилировать код?
     
  7. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    А что нужно оптимизировать?
     
  8. Ensiferum

    Ensiferum Активный пользователь

    С нами с:
    11 июл 2010
    Сообщения:
    1.292
    Симпатии:
    0
    Адрес:
    из секты поклонников Нео
    Kreker нагрузку на ЦП
     
  9. Gromo

    Gromo Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    мы использовали в своём проекте для кеширования. кеширование как кеширование

    для ускорения делали следующее:
    1. использовать nginx (т.к. работает быстрее апача)
    2. статику отдавать напрямую
    3. expire date для статики 1-2 дня
    4. хранить статику в двух вариантах - нормальном и gzip, отдавать то, что поддерживает браузер (настраивается в nginx)
    5. кеширование сложных запросов в бд
    6. кеширование сгенерированных страниц и блоков (т.к. некоторые страницы нельзя кешировать полностью)
    7. хранить статику на отдельном домене/поддомене на отдельной машине
    8. бд на отдельной машине / кластере

    акселераторами кода не пользовались, т.к. проект был не на пхп.
     
  10. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Тогда нужно оптимизировать алгоритмы.
     
  11. Vladson

    Vladson Старожил

    С нами с:
    4 фев 2006
    Сообщения:
    4.040
    Симпатии:
    26
    Адрес:
    Estonia, Tallinn
    Вывод ускоряю минимальной вёрсткой (чем проще страница тем лучше) скорость загрузки в целом выносом статики на другой сервер, скорость генерации ускорять сейчас нигде не приходится (хватает пока этой скорости) во времена далёкие когда сервера были маленькие а скрипты медленные, оптимизировал SQL-запросы.
     
  12. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    Короче, такая тема. eA весьма круто ускоряет, по времени в пару раз быстрее код выполнялся, памяти жралось раза 2-3 меньше. Но обнаружил баг, именуемый как "неведомая xyйня", вследствии чего пришлось от него отказаться. Поставил xCache, тоже ускоряет, но слабее чем eA. Но нет бага как в eA.
    Что касательно apc - думал его тыкнуть, но нашел инфу, что с php-fpm он не дружит и не стал пробовать.
     
  13. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    В чем проявлялся хоть?
     
  14. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    Kreker
    Есть страница, части которой при onload подгружались аяксом. При рестарте пхп (с включенным еА) вход на сайт происходит без проблем, все отображается. При обновлении страницы часть сайта пропадает, то есть доп. контент не подгружается, ошибок не выдает ни чих-пых, ни nginx, ни еа. Если вручную забить в браузере и попытаться получить ту часть страницы (которая, например, гетом или постом подтягивается) - нгинкс выдает или просто белую пустоту или Bad gateway. Причем, это не на одной той конкретной странице, на некоторых других также - где есть подгружаемый контент или обработка форм через аяксовый обработчик - эти страницы работают с первого раза, но когда попадают в кеш - у них отваливается часть/страницы, которые отдают инфу аяксом.
    Менял настройки, чистил кеш еа. Погуглил, нашел инфу что еа плохо работает (или вообще не работает) с пхпмайадмин. Сей продукт мне не нужен, но в pma там тоже "составные" страницы с фреймами и т.д. Потому, моим комитетом было принято решение отказаться в пользу xCache.
     
  15. Padaboo

    Padaboo Старожил
    Команда форума Модератор

    С нами с:
    26 окт 2009
    Сообщения:
    5.242
    Симпатии:
    1
    Стоит apc он дружит с php-fpm, основная проблема в том, что стандартный apc из пакетов крашится при имитации больших хеш таблиц и очень частом вызове функций чтения-записи. Проблема решается минут за 10 скачиванием сорцев и самостоятельным компилированием.
    Есть несколько способов решить проблему "ускорени вывода страниц"
    На клиентской части:
    1. Сделать валидным html код со strict (тогда браузер будет быстрее парсить и отображать и меньше времени тратить на фантазии интерпретации не валидного кода) - к слову дает очень маленький прирост.
    2. Оптимизация javascript обратный инкремент и еше куча вариантов оптимизации, дает ощутимый эффект особенно в firefox (который вешается при обработке большого количества dom элементов).
    3. Сокращение объема и сжатие дополнительных подключаемых ресурсов .js .css(сжатие, удаление комментариев и для каждой страницы свой набор функций) картинок (которые можно было бы объединить в спрайты).
    На сервере:
    1. Отключение журналирования файловой системы(ускоряет при наличии очень больших объемов инфомации на винте, но требует бесперебойного блока питания и laptop_mode для сбережения патиния и корректного выключения в случае чего ) и заточкой самой операционки (вплоть до сборки своего монолитного ядра с накатыванием проприетарных драйверов патчами и исключением всего лишнего).
    2. explain запросов (правильное расставление ключей, де нормализация базы, поиск нестандартных решений).
    3. Конфиг mysql (увеличение объема памяти на кеширование, etc..)
    4. Ускорение скриптов (ну слабые места языка и так все тут знают).
    5. Кеширование (при больших нагрузках имеет смысл кешировать даже результат изменяющийся раз в 30 секунд).
    6. Использование более быстрых и легких http серверов с их специфическими фичами.
    7. Решение с помощью доп железа (партицирование, репликация - думаю это заслуживает отдельной темы).
     
  16. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    Ябадабаду, ты чтоли, стукнул бы в скупе, уже пару дней как состоялось открытие)) Нужны бета-тестеры :)
     
  17. Padaboo

    Padaboo Старожил
    Команда форума Модератор

    С нами с:
    26 окт 2009
    Сообщения:
    5.242
    Симпатии:
    1
    Сейчас попробую поставить скайп, у меня тут новый ноут под альфa версией ubuntu 12.04 с собранным 3.2.1 ядром (сексом занимаюсь короче :D).
     
  18. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Щито за открытие? Народ хочед знать!
     
  19. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    igordata
    Есть проект один) Доделаю по паблик-статуса, дам тут на форуме инфу потом.
     
  20. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
  21. KMB

    KMB Активный пользователь

    С нами с:
    9 сен 2011
    Сообщения:
    63
    Симпатии:
    0
    Один мой знакомый проблему решил просто - при создании новых страниц оригинал хранит в mysql затем сохраняет в отдельном каталоге в обычном HTMLе и именно в таком виде затем "отдает" их юзерам. То бишь полнотекстовый поиск идет по БД, а результат набор обычных HTML-ок. По-моему быстрее чистого html еще никто не придумал.
     
  22. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    это называется кеш =)
     
  23. KMB

    KMB Активный пользователь

    С нами с:
    9 сен 2011
    Сообщения:
    63
    Симпатии:
    0
    Кеш это все-же временное хранилище. Так что здесь не кеш а скорее архив.
     
  24. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    два в одном =)
     
  25. KMB

    KMB Активный пользователь

    С нами с:
    9 сен 2011
    Сообщения:
    63
    Симпатии:
    0
    Ну можно и так сказать.