javascript

Neutralinojs — альтернатива Electron, потребляющая меньше памяти

  • четверг, 31 января 2019 г. в 00:20:46
https://habr.com/ru/post/438130/
  • JavaScript


Neutralinojs — фреймворк с открытым исходным кодом для создания кроссплатформенных приложений на HTML/CSS/JS. Отличие от Electron в том, что для запуска приложения на Neutralinojs не нужно устанавливать nodejs и сотни зависимостей, тянущихся из package.json. Давайте сравним Hello World приложение на Neutralinojs и Electron. Приложение на Neutralinojs можно запустить на Windows или Linux (на данный момент MacOS не поддерживается, но это планируется исправить в ближайшем будущем). Я запускал на Ubuntu 17.10.


Hello World на Neutralinojs


  1. Скачиваем архив neutralinojs-v1.1.0.zip (поддержка запуска полностью из командной строки в планах разработки) и распаковываем.


  2. Запускаем:


    ./neutralino

    На Windows:


    neutralino.exe

    Приложение запускается и выглядит вот так:



Оперативная память: один процесс neutralino — 9 mb.
Обьем папки с файлами на диске: 5 mb.


Hello World на Electron


  1. Клонируем репозиторий с файлами и переходим в созданную папку:


    git clone https://github.com/electron/electron-quick-start
    cd electron-quick-start

    Обьем склонированных файлов: 344 kb.


  2. Подтягиваем недостающие пакеты:


    npm install

    Появилась папка node_modules, обьем файлов в папке приложения стал: 218 mb.


  3. Запускаем приложение:


    npm start

    Приложение запускается и выглядит вот так:



Оперативная память: я насчитал шесть процессов (electron-quick-start, три процесса electron, node, npm) — в сумме они занимают 83 mb.


Итог


Приложение Занято на диске (mb) Занято оперативной памяти (mb)
Hello World на Neutralinojs 5 9
Hello World на Electron 218 83

Разница по потреблению памяти, что называется, на лицо.


Подробнее о проекте Neutralinojs можете прочитать здесь.