Respostas:
O módulo forever possui um conceito de vários servidores node.js. e pode iniciar, reiniciar, parar e listar servidores atualmente em execução. Ele também pode observar a alteração de arquivos e reiniciar o nó conforme necessário.
Instale-o se você ainda não o possui:
npm install forever -g
Após instalá-lo, chame o forevercomando: use o -wsinalizador para observar o arquivo quanto a alterações:
forever -w ./my-script.js
Além disso, você pode observar o diretório e ignorar padrões:
forever --watch --watchDirectory ./path/to/dir --watchIgnore *.log ./start/file
forever -c babel-node -w --watchDirectory ./server ./server/index.js mas, infelizmente, ele parece ser enviado para sempre em um desvio e reinicia o servidor com muita freqüência, resultando em erros de porta já em uso ... existe alguma maneira de adicionar uma pausa após uma reinicialização?
-tou, killTreefoi necessário, acho que o babel-node estava sendo morto, mas não o servidor Express que gerou.
Uma boa opção é o Node-supervisor e o Node.js. Reiniciar na alteração de arquivo é um bom artigo sobre como usá-lo, normalmente:
npm install supervisor -g
e depois de migrar para a raiz do seu aplicativo, use o seguinte
supervisor app.js
server.jsporque, porque ele estava sendo reiniciado constantemente, isso ocorreu devido ao meu servidor criar o cliente na inicialização e alterar os arquivos. supervisor --watch server.js server.jsResolvi-o.
Você deve olhar algo como nodemon .
O Nodemon observará os arquivos no diretório em que o nodemon foi iniciado e, se eles mudarem, reiniciará automaticamente o aplicativo do nó.
Exemplo:
nodemon ./server.js localhost 8080
ou simplesmente
nodemon server
Vários pacotes NPM estão disponíveis para facilitar essa tarefa.
Para desenvolvimento
Para produção (com funcionalidade estendida, como cluster, implantação remota etc.)
npm install -g pm2npm install -g strongloopA comparação entre Forever, pm2 e StrongLoop pode ser encontrada no site da StrongLoop .
Você também pode tentar nodemon
Para instalar o Nodemon
npm install -g nodemon
Para usar o Nodemon
Normalmente começamos o programa do nó como:
node server.js
Mas aqui você tem que fazer o seguinte:
nodemon server.js
node-dev
O node-dev é uma excelente alternativa ao nodemon e ao supervisor para desenvolvedores que gostam de receber notificações de rosnado (ou libnotify) em sua área de trabalho sempre que o servidor reiniciar ou quando ocorrer um erro ou alteração no arquivo.
Instalação:
npm install -g node-dev
Use node-dev, em vez de node:
node-dev app.js
Notificação sobre alteração de arquivo para que o servidor inicie automaticamente
consola
rune como é comparada às alternativas existentes. Apenas despejar outra opção apenas contribui para o paradoxo da escolha. (Felizmente runnão é atualizado desde 2015, então agora não é muita opção.)
Siga os passos:
npm install --save-dev nodemon
Adicione as duas linhas a seguir na seção "script" do package.json:
"start": "node ./bin/www",
"devstart": "nodemon ./bin/www"
como mostrado abaixo:
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node ./bin/www",
"devstart": "nodemon ./bin/www"
}
npm run devstarthttps://developer.mozilla.org/en-US/docs/Learn/Server-side/Express_Nodejs/skeleton_website