Pergunta

Se você executar uma tarefa intensiva de E / S no Node.js, como alguma operação de banco de dados assíncrona, usando Fibras de nós , está bloqueando?

Eu não usei nó-fibras ainda B / C Parece que - se usado no código que processa uma solicitação HTTP na qual um longo código de E / S de Normalmente não bloqueador é executado - agora impediriaOutras solicitações de acessar seu aplicativo.Isso é verdade ou não?Um pouco de detalhe sobre por que é verdadeiro / falso seria muito útil também.

Foi útil?

Solução

Fibras permitem que o programador "Like" thread "bloqueie o código JavaScript.Mas é implementação não está bloqueando, o código é equivalente ao código de evento do Node.js Async.A implementação de LaverDets faz uma pausa para a execução de fibras em algum momento, assim como o modelo Async Node.js, e pode ser retomado mais tarde.

As fibras são mais do açúcar sintático, eles não alteram o modelo do nó.js Async.A única diferença é que as fibras estão criando pilhas de execução diferentes (se estou correto), que é uma ligeira sobrecarga para o código assínculo Normal Nodejs.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top