NodeJS Flashcards
O que é o NodeJS?
Ambiente de execução do JS no lado do servidor
Quando usar o NODEJS?
Quando precisarmos de uma aplicação que precise lidar com muitas requisições e que não tenha seu fluxo travado
Aplicações em tempo real e com alta quantidade de requisições
Como funciona o NodeJs?
O código JS é compilado pelo Motor V8 para uma linguagem de máquina
Node utiliza uma única thread para execução do código
O que seria uma Thread?
unidade de execução dentro de um processo, permitindo que várias tarefas sejam realizadas simultaneamente.
Processo é um programa em execução.
Quais as vantagens do NodeJs?
- alta performance por conta do motor v8
- modelo i/o não bloqueante
- ótima opção para aplicações de tempo real (chats)
Quais as desvantagens do node?
- desafio por ser assíncrono
- limitação quando se trata de computação pesada
- o uso de muitas callbacks pode deixar o código dificil de ler
Quais são as caracterísita do V8?
- converte o JS para nativo durante a execução
- tem gerenciamento de memoria (garbage collector)
- suporte a versões do ecma
Como funciona o assincronismo no NodeJs?
- recebe uma tarefa e enviar para o pc resolver
- pronto para receber outra tarefa
- quando resolvida, o pc devolve a resposta para o node
O que é o Event Loop?
Mecanismo não bloqueante e assíncrono que permite que o programa continue a responder eventos sem bloquear as outras funcionalidades
Como funciona o Event Loop?
Monitora a Callstack e a Callback Queue, verificando se tem alguma função para ser executada
O que é e como funciona a Callstack?
Empilha as funções que são chamadas durante a execução de um programa e retira quando a função termina de ser executada
O que é a Callback Queue?
Enfileira as callbacks das funções assíncronas que termiram de ser executadas
Como funciona a Callback Queue?
As funções só serão executadas quando a callstack estiver vazia
O que é o “Node Apis”?
APIS que delegam as chamadas para o SO
Como funciona o Node APIS?
Garante que a callstack continue o processamento de outras funções.
Quando a função é concluída, a callback é colocada na callback queue.