LINUX.ORG.RU

Результаты тестирования шести ведущих фреймворков на производительность


0

0

Alrond протестировал скорость работы движков MVC нескольких популярных фреймворков.

Результаты:
1. django.
2,3 поделили TurboGears и RoR 1.1.6
4. Catalyst.
5. CodeIgniter.
6. RoR 1.2.1
7. Symfony

>>> Подробности

★★★

Проверено: Shaman007 ()

Ответ на: комментарий от guardian

>Spring, Struts, JSF и тд.

дурак чтоли? сравниваются СКРИПТОВЫЕ языки.

anonymous
()
Ответ на: комментарий от anonymous

>Форум, например, будет очень сложно закешировать :).

см forum.ixbt.com

правда, говорят, пока глючит.

anonymous
()
Ответ на: комментарий от AcidumIrae

> > Модули Перла тоже неплохо так пишутся на на строго типизированных языках программирования общего назначения (в основном С/C++)

> дык, речь там была о начальном ПРЕДНАЗНАЧЕНИИ ;)))

Изначальное предназначение перла - писать все, что на shell/awk слишком громоздко, а на C - бессмысленно и сложно. Когда он создавался, никакого веба еще в проекте не было ;-)

anonymous
()
Ответ на: комментарий от anonymous

>см forum.ixbt.com правда, говорят, пока глючит.

Так я не говорил что нельзя, просто это не так просто. По крайней мере те форумы к которым имел отношение я фиг закешируешь если только не создавать отдельный кеш под каждого пользователя т.к. у всех настройки форума разные, разные скины итп. Можно закешировать не весь запрос а только, например, обращения в базу через memcached.

anonymous
()
Ответ на: комментарий от anonymous

>Ню-ню, а потом, когда чуть вырастит посещаемость все бегают выпученными глазами и думаю что же делать т.к. сервер не тянет.

Ну, у меня древний Xeon-1800 по 700 тыс. хитов в сутки вытягивает не просто легко, а гоняя ещё в фоне MMORPG на Java без особых лагов :) Почти все запросы - на те или иные компоненты CMS. В среднем за сутки доходило до 800 MySQL-запросов в секунду. Сейчас, правда, уменьшил, добавил больше статики. А то у юзеров MMORPG начала подлагивать :)

>Форум, например, будет очень сложно закешировать :)

Сейчас почти весь контент форумов (около полутора гигабайт, скоро перевалит за миллион постингов) в кеше лежит. Но сборка каждой страницы ещё на PHP+MySQL. Всё руки не доходят фронтенд от PunBB на свой перевести. Вот тогда будет полная статика :)

...

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

KRoN73 ★★★★★
()
Ответ на: комментарий от anonymous

>см forum.ixbt.com

>правда, говорят, пока глючит.

Он не просто глючит. Он чудовищно неудобен :D Страдаю каждый раз, когда приходится там попостись. А уж про браузеры без JavaScript на нём сразу забыть можно.

KRoN73 ★★★★★
()
Ответ на: комментарий от anonymous

>По крайней мере те форумы к которым имел отношение я фиг закешируешь если только не создавать отдельный кеш под каждого пользователя т.к. у всех настройки форума разные, разные скины итп.

Давать пользователям выбирать скин - пользователи поделятся на две категории. 90% будут использовать скин по умолчанию (если, конечно, он не самый дерьмовый, но это уже забота админа), а 90% из оставшихся 10% выберут самый неудачный скин, не замечая, как напрягают себе глаза и т.п. :)

То же самое со всяким разным числом постингов на страницы. Потом очень забавно смотреть "Я об этом писал на 15-й странице" - "Нет, не видел я там!". А всего-то делов, что один из этих умников выставил свои параметры.

...

Так что, единственное, что нужно индивидуально подсовывать - всякие там закладки, личные сообщения, отметки об оновлениях... А вот это всё уже можно на JavaScript посадить.

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

>Давать пользователям выбирать скин - пользователи поделятся на две категории

Я для примера привел то что поломает кэш :).

>Так что, единственное, что нужно индивидуально подсовывать - всякие там закладки, личные сообщения, отметки об оновлениях... А вот это всё уже можно на JavaScript посадить.

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

Короче проблему производительности надо решать на этапе разработки на уровне движка а не когда все пукнет или по крону делать " * * * * * wget --header="Host: site.ru" http://localhost/ -O /home/site.ru/www/index.html" :)

anonymous
()

Думал речь идет об Open Symphony и WebWorks, а сравнение этой фигни лично мне мало интересно.

Насчет производительности. Более-менее серьезного заказчика волнует масштабируемость. Т. е. возможность закинуть это все на быстрое железо или на кластер, где приложение будет просто летать.

А низкоуровневое оптимизацией нынче мало кого привлечешь. Что толку от того, что приложение летает на музейном сервере образца 2000 года?

anonymous
()
Ответ на: комментарий от anonymous

>Насчет производительности. Более-менее серьезного заказчика волнует масштабируемость. Т. е. возможность закинуть это все на быстрое железо или на кластер, где приложение будет просто летать.

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

>А низкоуровневое оптимизацией нынче мало кого привлечешь. Что толку от того, что приложение летает на музейном сервере образца 2000 года?

Это ты так думаешь, 90% проектов что я "размазывал" по нескольким серверам отлично работали бы на одном сервере если бы не криворукие прогеры. Щас такие сервера пошли, world во бзде меньше чем за 20 минут собирают. Такие тачилы при правильном подходе стока запросов держат что access-лог больше 10гигов в сутки получается и при этом еще есть запас по производительности. Админить, бэкапить и обновлять одну железку гораздо легче чем стойку. Меньше железа-меньше вероятность отказа.

anonymous
()
Ответ на: комментарий от anonymous

> Не видел ни одного web-движка который бы кластеризовался из коробки и который используют типичные зачазчики, по крайней мере не самописного. А заказчиков с которыми я работал волновало только чтобы а) работало б)было не сильно дорого. О кластерах они знают только по наслышке.

Бизнес логика суется в EJB, веб-фраемворк Struts, все кидается куда-нибудь на weblogic или JBoss, если денег на сервер жалко, которые пашут на кластере.

anonymous
()
Ответ на: комментарий от anonymous

Немного не по теме. Зашел на http://udaff.com/ там на главной странице картинке с Билли, упал под стол.

anonymous
()
Ответ на: комментарий от anonymous

>Бизнес логика суется в EJB, веб-фраемворк Struts, все кидается куда-нибудь на weblogic или JBoss, если денег на сервер жалко, которые пашут на кластере.

Я имел в виду что то с чем мне приходится работать кластеризуется через попу(php-движки всякие типа битрикса). Почему-то жабовладельцы за помощью не обращаются :).

anonymous
()
Ответ на: комментарий от Deleted

> Сервак сейчас можно и за $1500 взять. Это ~ месяц работы одного среднего php-кодера.

А где такую работу дают?

shimon ★★★★★
()

Питон рулит! Сам на нём пишу. Забудьте вы этот ПХП, как я это когда-то сделал.

anonymous
()
Ответ на: комментарий от anonymous

>Изначальное предназначение перла - писать все, что на shell/awk слишком громоздко, а на C - бессмысленно и сложно. Когда он создавался, никакого веба еще в проекте не было ;-)

а кто спорит? ;) прочитайте еще раз и поймете :)))

AcidumIrae ★★★★★
()
Ответ на: комментарий от anonymous

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

Zope гляньте

anonymous
()
Ответ на: комментарий от KRoN73

> Ну вот, уже одно только включение eAccelerator уменьшает разрыв Django/PHP всего вдвое. И это у довольно тормозных фреймворков...

ххехе а у джанго включаем psyco. -)

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.