Я должен использовать haml или erb или erubis для сайта потенциально интенсивного трафика?

strsplit(string,split='|', fixed=TRUE)

Это возможный ответ. Другие решения?

47
задан James A. Rosen 24 September 2008 в 19:06
поделиться

7 ответов

Я люблю HAML, так как это - хороший инструмент для того, чтобы легко записать структурированный HTML, и обычно это - просто радость для использования. Но это очень мало имеет отношение к выбору инструмента на основе объема трафика, который мог бы иметь сайт.

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

Несколько представлений, которые показывают, как улучшить производительность веб-сайта, могут быть найдены здесь:

И лучшее место, о котором я знаю изучить, как использовать направляющие, кэширующиеся, правильно:

11
ответ дан Evgeny 7 November 2019 в 23:18
поделиться

Скалы Haml. Я не видел недавних показателей производительности, но это достаточно близко к erb в эти дни. Я думаю, что это могло бы быть быстрее, чем erb при включении ужасного режима (который предотвращает симпатичное добавление отступа), Мы делаем 2,8 миллиона просмотров страниц в день с Haml.

существует benchmarker, зарегистрировался в исходном дереве Haml: http://github.com/nex3/haml/tree/master/test

ноябрь 2009 Обновления

Nathan (основной разработчик Haml) опубликовал некоторые сравнительные тесты Haml 2.2 на его блоге. Вы видите точные числа там, но короче говоря:

  • Нормальный (симпатичная печать) режим = в 2.8 раза медленнее, чем режим ERB
  • Ugly (никакие симпатичные добавленные вкладки) = равняется ERB

, который можно включить ужасному режиму путем размещения Haml::Template::options[:ugly] = true в файле среды или инициализаторе. Обратите внимание, что ужасный режим не действительно настолько ужасен - получающийся HTML на самом деле намного более симпатичен, чем ERB - это просто не располагается с отступом приятно.

45
ответ дан casey 7 November 2019 в 23:18
поделиться

При использовании направляющих различие в производительности между Haml и erubis незначительно: шаблоны компилируются и кэшировались после первого хита, так или иначе. Объедините это с фрагментом и кэшированием страницы, и можно пребывать в уверенности, что представления не являются узким местом производительности приложения.

вопрос необходимо спрашивать себя: Вам нравится писать Haml? Это делает Вас более продуктивными? Тогда можно решить легче.

27
ответ дан mislav 7 November 2019 в 23:18
поделиться

Если Вам нравится, как работы haml с точки зрения кодирования, не волнуйтесь о производительности механизма шаблонной обработки слишком много. (Хотя, как Вы указали, это теперь быстро.) Это может определенно генерировать любой вывод, другие механизмы могут.

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

2
ответ дан Nate 7 November 2019 в 23:18
поделиться

Я лично рекомендовал бы нам erubis в предварительно скомпилированных шаблонах.

Особенно, если нет никакой потребности в динамической шаблонной обработке. Тогда Ваше самое большое замедление будет ограничено скоростью, на которой рубин может проанализировать рубин.

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

Компиляция однажды, используйте многих.

, О, и если Вы действительно обеспокоены скоростью, Tenjin может быть достойный внимания также (те же создатели как erubis)

http://www.kuwata-lab.com/tenjin/rbtenjin-examples.html

1
ответ дан Kent Fredric 7 November 2019 в 23:18
поделиться

Ну, производительность Haml продолжает улучшаться с каждым выпуском. Это в приемлемом месте в текущее время? Это для Вас для решения (я склонен сказать "Да", но это - выбор на основе потребностей). Если Вам нравятся шаблоны и удобочитаемость, они обеспечивают, то отбрасывание производительности (однако незначительный) должно действительно быть заключительным фактором в Вашем решении.

Один из других инструментов, которых необходимо рассмотреть использование в сочетании с Haml, является make_resourceful, другим драгоценным камнем специалистом по обслуживанию Haml (Nathan Weizenbaum), который упрощает много УСПОКОИТЕЛЬНЫХ вещей в приложении для направляющих.

, Если бы Вы имеете дальше, более конкретные вопросы о Haml (и m_r), я уверен, что Nathan был бы более, чем рад ответить на них. Он может быть достигнут через Jabber/XMPP и электронную почту. Его контактная информация может быть найдена здесь .

0
ответ дан wfarr 7 November 2019 в 23:18
поделиться

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

Однако в случае шаблонов ERb, Вы получите лучшую производительность по существу бесплатно при использовании erubis.

4
ответ дан seancribbs 7 November 2019 в 23:18
поделиться