Как сравнивается объем памяти некоторых общих веб-фреймворков?

Гипотетически, если бы я должен был создать одно и то же приложение с использованием нескольких популярных/подобных фреймворков, скажем, PHP (cakePHP | Zend), Django и Rails, должно ли потребление памяти каждого из них быть примерно одинаковым?

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

Ответ 1

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

Ответ 2

Нет, он будет сильно отличаться от одного фрейма к другому.

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

Ответ 3

Трудно сказать, я бы сказал, что PHP-фреймворки будут иметь в основном аналогичный след, который обычно меньше, чем другие структуры, такие как Rails и Django. Но это зависит от того, что вы включаете в качестве рельсов, таких как mongrel (rails server proxy). В целом это зависит и от вашего кода, но PHP в большинстве случаев дает более легкое время на сервере. (Без какого-либо языкового смещения я использую как PHP, так и Rails)

Ответ 4

Просто для получения некоторой перспективы позвольте мне сообщить о реальном потреблении памяти в случае использования веб-фреймворка Smalltalk AIDA/Web.

Для запуска 40+ сайтов на одном изображении Smalltalk на одном сервере он в настоящее время потребляет 330 МБ памяти.

Ответ 5

Единственная из тех фреймворков, которые я использовал, - CakePHP. Я обнаружил, что это не плохой след, но гораздо более тяжелый, чем обычный PHP без использования фреймворка, но может быть хорошим компромиссом. Хорошее сравнение некоторых из самых популярных фреймворков PHP можно найти на http://www.avnetlabs.com/php/php-framework-comparison-benchmarks.

Ответ 6

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

Но... По моему опыту, Django не страшно голоден. Я запустил его на своем общем хосте с объемом памяти менее 100 МБ. Но мой опыт явный анекдот. YMMV. Если вы поедете с Django, вот несколько советов, чтобы сохранить использование памяти.

ИЗМЕНИТЬ. И не ходите с zope, если для вас важна область памяти.