Почему мой eber-cli наращивает время так медленно на окнах?
Ember-cli строит очень медленно с ember server
на окнах.
Build successful - 13126ms.
Slowest Trees | Total
-------------------------------+----------------
TreeMerger (vendor) | 3154ms
TreeMerger (stylesAndVendor) | 2051ms
TreeMerger (appAndDependencies) | 1914ms
StaticCompiler | 1791ms
Это отличается от того же проекта, что меньше 1 секунды в окне linux.
Ответы
Ответ 1
Официальная рекомендация от ember-cli для улучшения производительности на Windows
Установите ember-cli-windows с узлом, используя следующую команду
npm install -g ember-cli-windows
Запустите следующую команду в корневой папке вашего проекта
ember-cli-windows
Ответ 2
Есть два крупных виновника:
- Сканирование или защита файловой системы в реальном времени
- Защита в реальном времени от Защитника Windows (также известна как Microsoft Security Essentials в win7)
- Индексирование поиска Windows
- Антивирусное сканирование
- Неиспользуемые файлы в папке bower_components
Сканирование в режиме реального времени
Во время сборки в папке ./tmp
проекта ember генерируются многочисленные файлы, как индекторы, так и защита в реальном времени делают дополнительные чтения каждого файла, что добавляет значительное количество дополнительных операций ввода-вывода файлов.
Исправление:
Это приведет к сокращению времени сборки до нескольких секунд. Дополнительные улучшения скорости для Windows: продолжает изучаться в отношении обработки Broccoli процесса сборки.
Управление неиспользуемыми файлами bower
Имея большое количество файлов в bower_components является самым большим виновником.
Я написал script, clean-ember-cli.js, который удаляет все, кроме зависимостей ember-cli, и ничего импортированных в Brocfile.js
. Я возвращаюсь к примерно 5-секундному времени сборки.
Update
Отчеты поддерживают консоль как администратор.
Ответ 3
умьте одну важную вещь... и я не узнал ни на одном форуме... если вы работаете с ноутбуком, и вы не подключены к сети переменного тока, окна могут работать в режиме низкой производительности, чтобы поддерживать батарею. Это заставляет ember строить proyects в 4 раза медленнее
Ответ 4
Использование ember-cli 1.13.13 с командной строкой, запущенной как администратор, исправил ее для меня
Ответ 5
В дополнение к приведенным выше ответам выполните
ember s
в режиме powershell в режиме администратора. Это позволяет использовать символические ссылки, которые по умолчанию не включены в Windows. Наличие символических ссылок создает более плоскую папку node_modules, что приводит к более быстрому времени работы.
(Источник)
Ответ 6
В Windows 7 я получил 50% -ное улучшение, отключив off Шифрование файловой системы (EFS) для каталога проекта /tmp
. (щелкните правой кнопкой мыши Properties- > Advanced- > Encrypt contents...)
Для более поздних версий Ember CLI, работающих в режиме администратора, как упоминалось здесь и предложенный D-Go в его ответе, похоже, так идти, предполагая, что ваша компания допускает это.
Если я использую GIT Bash для запуска Ember, вам может быть интересно, как настроить его для автоматического запуска в режиме администратора здесь