Комментарии 13
Да, вот потребление памяти растовыми сервисами это прямо выше всех похвал, а когда сервис ещё и stateless, то можно вообще на копеечном количестве ресурсов хайлоад крутить.
Аномально большое использование памяти связано с запуском Node.js в «режиме кластера», который запускает 12 процессов — по одному на каждое из 12 ядер процессора на тестовой машине, где каждый из них — отдельный процесс Node.js, что и приводит к использованию 1300+ МБ памяти, несмотря на простоту нашего сервера. JS однопоточный, так что это если мы хотим полностью использовать многоядерный процессор, это — необходимое зло.
Относительно 13 МБ Памяти у Раста.
Интересны были бы показатели на 1 процессе ноды, а не на кластере
Кажется странной идея самому переписывать на Rust когда совсем недавно тут была статья, называлась «Попробуйте Tauri», кажется.
13 МБ впечатляют. Даже не столько 13 МБ как таковые, так и должно быть, а скорее то, что ноде нужно в 100 раз больше памяти, чтобы делать "то же самое" в 5 раз медленнее.
Но, справедливости ради, "то же самое" - не то же самое, файлы получаются разные, а значит и алгоритмы формирования файла - разные. Да и веб-сервера тоже разные, с разным набором возможностей. По сути произошла замена одного черного ящика другим черным ящиком, не вдаваясь в подробности, что внутри этих черных ящиков.
Я не сомневаюсь, что при сравнении одинаковых алгоритмов картина будет похожей. Просто хотел вынести в комментарий для читающих по диагонали (как я в первый раз), что статья не про сравнение скорости языков, а про сравнение скорости веб-серверов на этих языках в сочетании с библиотеками по генерации qr-кодов, о чем по сути в статье и написано.
Не очень понятно какую память меряют. Если виртуальную, то 1300 метров могут быть меньше на самом деле. Правда, даже если 1300 на самом деле 650, всё равно разница впечатляющая.
хотелось бы с go увидеть тут же сравнение, расширим статью ?)
а вообще такую практику смешивания я считаю не очень удачной, это же и тестировать надо и разворачивать, лучше уж на чем то одном писать, и выбирать инструмент подстать задаче
Использование Rust в серверах, написанных на других языках, для повышения производительности