Бывают случаи, когда вам нужно сэкономить аппаратные ресурсы (либо для продолжения использования устаревшего оборудования, для воспроизведения встроенной карты, либо просто для повышения эффективности, потому что большой объем памяти загрязняет кеши ЦП, что приводит к неприемлемым уровням простоя).
В этом духе были предприняты некоторые усилия по созданию «легких» портов Java или Mono (C # для Linux), и они варьируются в пределах 80-50 МБ (вместо 100-200 МБ).
Добавьте веб-сервер (Apache, IIS и т. Д.) К обработчику сценариев, и вы можете с радостью погрузиться в ГБ (IIS + .Net) только для загрузки инструмента в память.
У кого-нибудь есть более скромные инструменты в области спецификаций?
nginx известен своей превосходной производительностью и низким потреблением ресурсов (около 2,4 МБ в последний раз, когда я слышал о нем). Обратной стороной является то, что вам, по-видимому, придется перекомпилировать весь сервер, если вы хотите включить новый модуль.
Что касается языков, я всегда хотел указать всем (особенно веб-разработчикам) на haXe, по ряду причин. В этом случае, поскольку НекоВМ это возможная цель. Он имеет довольно небольшую площадь, приличную скорость и обеспечивает постоянство в памяти. Однако в настоящее время нет возможности запустить NekoVM на сервере nginx. Что дает вам шанс вмешаться и стать героем ;-)
Также скоро будет доработан бэкэнд haXe C ++, чтобы он стал подходящим для разработки веб-серверов. Поскольку у вас есть опыт работы с C ++, это может вас заинтересовать.
привет
back2dos
Трудно найти сравнения, которые помогут принять решение, но в приведенных ниже тестах используются тот же инструмент и процедура, что и в Open-Source. Тест Phoronix.
Вот пара сравнений производительности / ЦП / ОЗУ доступных Nginx, Lighttpd и G-WAN. Вот и там.
Оба теста используют разных клиентов (ab
однопоточный и weighttp
, сделанный Lighttpd, является многопоточным), разные процессоры ( i3 dual-Core CPU
против XEON CPU with 6 Cores
) и разные версии серверов, но иерархия такая же (за исключением объема памяти: в этом случае победитель второго теста отличается от первого).
Наименьший размер занимает G-WAN (процесс 150 КБ), который поддерживает Java
, C
, C++
, D
, и Objective-C
scripts
изначально, в то время как другие требуют использования бэкэндов FastCGI.