Quais as diferenças na perfomance entre o node.js e o php?
Quais as diferenças na perfomance entre o node.js e o php?
Fala aí Mateus, beleza? O Node possuí uma performance incrível, realmente é muito rápido se comparado a outras linguagens, afinal, porque?
O Node roda em cima do motor V8 da Google, sua arquitetura é baseada em eventos (event based) e single thread) (thread única, dessa maneira, para cada script que o Node executa/interpreta um novo processo é criado.
Além dessas características o Node também tem o conceito de não ser blocante (I/O non-blocking).
Afinal, o que isso tudo quer dizer? Diferente de linguagens como PHP que rodam em cima de threads e são blocante, ou seja, cada função depende de outra, enquanto uma determinada função não terminar, ele fica esperando para executar as demais.
Já o Node não, ele tem um event loop que fica escutando e recebendo eventos, quando um novo evento é emitido através do Event Emitter
ele vai para uma fila de eventos (events queue), dai esse event loop pega o próximo evento da fila e o manipula/executa através dos seus events handles, em outras palavras: Quando o evento A for emitido, faça isso, quando o evento B for disparado faça aquilo...
Dessa maneira, ele roda suas funções através de eventos e callbacks sem precisar ficar bloqueando próximos funções, dessa maneira as coisas são rodas de forma assíncrona.
Espero ter ajudado.