The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Тестирование шести ведущих web-фреймворков на производительность

29.01.2007 13:31

Проведен детальный анализ производительности шести фреймворков. В тестировании принимали участие:

С большим отрывом победил Django framework. Кроме того, с использованием Psyco модуля можно дополнительно ускорить django на 15-30%, но за это приходится расплачиваться возросшим потреблением памяти VSZ на 80% в prefork-режиме и на 400% в threaded-режиме. RSS потребление увеличивается в 2-2.5 раза.

  1. Главная ссылка к новости (http://www.alrond.com/ru/2007/...)
Автор новости: Alrond
Тип: яз. русский / Обобщение
Короткая ссылка: https://opennet.ru/9649-web
Ключевые слова: web, framework, php, python, perl
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (36) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, matriks (??), 14:31, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    CodeIgniter (PHP) - что за "хомячок бешенный"? Скачал я его, посмотрел. Блин, хватило же ума сравнивать Django и "это". Пусть автор еще сравнит кросовки PUMA с валенками, а что, и в тех, и в тех ходить можно... =)
     
  • 1.3, alrond (??), 14:54, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    фреймворки на PHP я взял для того, чтобы потом не обвиняли в предвзятости, типа
    "а где мой любимый ... на PHP?"
    Это и ежу понятно, что PHP пролетит, хотя всякие зенды и помогут, но не настолько, чтобы дотянуть до полноценных Django или RoR...

    В вот то, что Django сильно обогнал RoR, это позновательно.
    Плюс то, что у новой версии RoR 1.2.1 какие-то проблемы по сравнению со старой версией 1.1.6

     
     
  • 2.4, Гость (?), 15:17, 29/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    alrond> у новой версии RoR 1.2.1 _какие-то проблемы_
    "какие-то проблемы" - да, это очень познавательная информация :)
     
  • 2.5, matriks (??), 15:18, 29/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Ну-ну..., валенки нужно взять, это и так понятно, что они пролетят. Надо было нормальный фрейм брать на 5м РНР, качественно и разумно написанный! А так..., распальцовочка побольше и: " фреймворки на PHP я взял для того, чтобы потом не обвиняли в предвзятости, типа"
     

  • 1.6, Антон (??), 15:28, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отличная работа !
    Хотелось бы такое же сравнение CMS увидеть.
     
  • 1.7, GliNT (??), 15:37, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Надо было еще добавить JBOSS, после чего прокомментировать - "очень медленная и сложная система, Java - sux, Ruby рулит".
    Потом поставить что-нибудь на ASP.NET и доказать, что даже в тестовой программе "Hello, world!" там есть проблемы с безопасностью и глюки.
    Далее раскритиковать mod_perl за то, что он слишком сложен для примера "Hello, world!".

    И в итоге положить начало еще одной holy war..

     
  • 1.8, Аноним (-), 16:02, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    когда не получается меряться удобством и практичностью, меряются скоростью
     
     
  • 2.13, uldus (ok), 16:51, 29/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >когда не получается меряться удобством и практичностью, меряются скоростью

    Кому нужна практичность и удобство при кривом коде и ужасной производительности ? Я до тошноты нагляделся на красивые и удобные PHP проекты, которые жрут по 20 Мб памяти и делают по 100 запросов к MySQL на каждое обращение к странице.

     
     
  • 3.24, Аноним (-), 21:12, 29/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    и отныне думаете что все такие?

    гляньте на 'проваливший' тест CodeIgniter внимательнее, очень удобный, и минимум кода, больше скорости.

     
     
  • 4.25, cadmi (?), 23:43, 29/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    удобство и практичность - это точно не про похапэ
     

  • 1.9, funny_falcon (?), 16:22, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Сравнивать с php без акселератора не честно:
    1. остальные фреймворки компилят свой код лишь однажды, php без акселератора - на каждый запрос
    2. имитировался нагруженный сайт, а ни один нагруженный сайт не запускается без акселератора
    Пусть возмет хотя бы eAccelerator. С ним даже я разобрался.

    По поводу RoR: он действительно проседает, запущенный через Mongrel. Запущенный через fastcgi он держит нагрузку при любом количестве одновременных коннектов (и быстрее процентов на 30%)

    По-этому тестирование сакс.

     
     
  • 2.18, sauron (??), 18:12, 29/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Можно дурацкий вопрос почему php реализация на java делает по скорости нативную реализацию PHP даже с акселераторами ?
     
  • 2.26, cadmi (?), 23:44, 29/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    > остальные фреймворки компилят свой код лишь однажды, php без акселератора - на каждый запрос

    как это кривье написали, так и сравнивают. все честно.

     
     
  • 3.28, Michael Shigorin (?), 01:16, 30/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    "Написали" != "используются".

    Впрочем, такое масштабное сравнение "честно" под силу или какому-то редкому универсалу, каким обычно не до сравнений, или хорошей команде веб-разработчиков, которая в очередной раз перетряхивает инструментарий (и при этом не позволит себе таких ляпов, как сравнивать производительность неотбайткомпиленного питона с php+акселератор -- ну или наоборот, как наблюдаем).

    P.S. Можно посмотреть Ваш ровный и красивый код?  Я на php писал только кривьё (на четвёртом курсе), но оно непублично и вряд ли кому навредит; на python писал мало и там он был вскоре выкинут как неадекватный; на ruby писал заметно больше, но небольших скриптов (аккаунтинг там для контент-провайдера).  Частично опубликовано, например, http://old.linux.kiev.ua/~mike/works/misc/arp2dns+dhcp.rb

     
     
  • 4.32, cadmi (?), 10:42, 30/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    в ISP служебные системы за зарплату. врядли работодатель обрадуется.
     
     
  • 5.33, gvy (?), 11:08, 30/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >в ISP служебные системы за зарплату. врядли работодатель обрадуется.
    Так это ж не претензия была :-)  Скорее наоборот даже.
     

  • 1.10, alrond (??), 16:24, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    делал тест для себя, решил поделиться. я пробовал разные фреймворки и на php и с ускорителем, и ror...и в результате выбрал django - как самый удобный, практичный и, как оказалось, самый скоростной.
    Принимается конструктивная критика, а на всякие заявления, типа "валенки пролетят"... к сожалению, не успею ответить всем :-) - обосрать многие спешат...
     
     
  • 2.30, ок (??), 09:58, 30/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    а помоему,  руби - более интересный язык, чем питон.Учитывая несильное отставание в производительности я бы выбрал более интересный инструментарий.
    Хотя, конечно, этот фактор не определяющий в данном вопросе. (и субъективный)
     
     
  • 3.34, ingoa (??), 14:47, 30/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    А что в руби более интересного?
     
     
  • 4.35, gvy (?), 14:56, 30/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >А что в руби более интересного?
    Оно красивое и IMHO легче на мозги ложится, естественней как-то.  В т.ч. потому, что не диктует, как (по стилю в т.ч.) писать -- хочешь, пиши а-ля перл, сжато, но непрозрачно; хочешь -- пиши красиво, как у других читал.  Чтоб как хорошая проза.  И необязательно ступеньками там, где это читабельность уменьшает (из-за растяжки по вертикали).

    Менее интересного -- отсутствие в 1.x байт-кода (по крайней мере не знаю -- в JRuby ж тоже?).

    Есть неплохие лекции Юры Лейкинда на русском, водились где-то около iatp.by; есть http://lists.altlinux.org/mailman/listinfo/ruby

     

  • 1.11, alrond (??), 16:26, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >>По поводу RoR: он действительно проседает, запущенный через Mongrel. Запущенный через fastcgi он держит нагрузку при любом количестве одновременных коннектов (и быстрее процентов на 30%)
    у меня это и указано, что результаты для ROR должны коррегироваться с учетом коэффициента 1.29
     
  • 1.12, funny_falcon (?), 16:47, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >> я пробовал разные фреймворки и на php и с ускорителем

    Но почему не выложил результаты с ускорителем? Они обычно раз в пять лучше чем без :-)

    >> у меня это и указано, что результаты для ROR должны коррегироваться с учетом коэффициента 1.29

    Я понимаю, но у тебя также сказано, что RoR проседает под большим кол-ом конектов, а я говорю, что под FastCGI проседания нет

     
  • 1.14, funny_falcon (?), 16:53, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Просто не понятна цель тестирования.
    Под малой нагрузкой абсолютно все-равно какая скорость.
    Значит имитируем большую. И при этом не используем ускоритель?
     
  • 1.15, x0r (?), 16:53, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    what about Zope?
    а что про zope автор скажет?
    >>>
    django - как самый удобный, практичный и, как оказалось, самый скоростной
    <<<

    хотелось бы услышать сравнение и по Zope, особенно в плане практичный и удобный...

     
     
  • 2.27, cadmi (?), 23:46, 29/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    zope рулило, в 99 году, когда у Питона не было ничего, ни django, ни turbogears, ни сонма фрейморков попроще. нынче это оверхед и жупел, которым чаще, чем следует, любят попрекнуть. особенно те, кто ниасилил настроить plone.
     
  • 2.36, bmc (??), 13:07, 01/02/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Zope - страшный тормоз. Говорю как человек писавший и под чистый зоп и под plone.
     

  • 1.16, alrond (??), 17:03, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Zope не относится к классу MVC-фреймворков. А я тестировал именно их.
    И вообще это целый комплекс :)

    >>Я понимаю, но у тебя также сказано, что RoR проседает под большим кол-ом конектов, а я говорю, что под FastCGI проседания нет
    Возможно, только у меня под nginx не пошел. нет возможности проверить.

     
  • 1.17, ок (??), 17:09, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    срочно вторую часть надо выпустить с учетом пожеланий трудящихся
     
  • 1.19, Deepwalker (??), 18:58, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А мне нравится тест : )) Но конечно было бы интересно посмотреть насколько помогают акселераторы php. Но это наверное несколько другая история - сравнение оптимизаторов php, вот. Полезнее в работе чем меряться органами.
     
  • 1.20, funny_falcon (?), 19:09, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >> Возможно, только у меня под nginx не пошел. нет возможности проверить.

    А под lighttpd командой script/server lighttpd ?
    Понимаю, процесс RoR будет только один, но всё-таки ?

     
  • 1.21, alrond (??), 19:54, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Сделал краткий тест с акселератором, можно посмотреть на блоге, в P.S.
     
  • 1.22, tug (??), 20:18, 29/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отличный тест, никого не слушайте. Очень актуально и полезно.
     
  • 1.29, ок (??), 09:00, 30/01/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    вобщем после прочтения можно сделать вывод, что для прикладных проектов выбора кроме рельсов не остается.
    осталось найти хороших хостеров на территории РФ
    причем пару, дабы была альтерантива
     
     
  • 2.31, ок (??), 10:00, 30/01/2007 [^] [^^] [^^^] [ответить]  
  • +/
    хотя о чем это я. речь не о хомячках же.
     

  • 1.37, alrond (??), 01:53, 05/02/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Дополнил тестирование другими PHP-ными фреймворками, Pylons и TG c разными обработчиками темплейтов
    http://www.alrond.com/ru/2007/feb/04/dopolnenie-k-test-mvc-frameworks/
     
     
  • 2.38, kerzol (ok), 02:31, 16/09/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Спасибо. Нашел еще один ресурс с описанием CodeIgniter - http://kerzoll.org.ua/category/codeigniter
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Слёрм
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру