{"componentChunkName":"component---src-templates-blog-post-js","path":"/conceitos-do-node-js/","result":{"data":{"site":{"siteMetadata":{"title":"Blog"}},"markdownRemark":{"id":"1659406f-fbdd-53dd-a496-60aeddc52151","excerpt":"N﻿ode.js é uma plataforma open-source que permite a utilização de Javascript no lado do servidor. Ele é composto pela v8 que é um interpretador JavaScript que a…","html":"<p>N﻿ode.js é uma plataforma open-source que permite a utilização de Javascript no lado do servidor. Ele é composto pela v8 que é um interpretador JavaScript que a princípio foi criado para acelerar a execução de JavaScript no lado do browser; pela libuv que é uma biblioteca multiplataforma com foco em I/O assíncrono; por um conjunto de módulos.</p>\n<p>O﻿ Node.js surgiu a partir da percepção da falta de suporte a processo de I/O assíncrono das linguagens na época (2009).</p>\n<p>C﻿aracterísticas do Node.js</p>\n<ul>\n<li>A﻿rquitetura Event Loop</li>\n<li>S﻿ingle thread</li>\n<li>N﻿on-blocking I/O</li>\n<li>M﻿ódulos próprios</li>\n</ul>\n<p>Um pouco sobre o Event Loop</p>\n<p>O﻿ event loop é como se fosse um escutador de eventos, e ele fica escutando as funções que vão chegando a call stack. A call stack é uma pilha onde ficam as funções que são executadas. No caso do Node.js, uma requisição não bloqueia a outra, então quando temos uma requisição a uma API por exemplo, onde é necessário levar um tempo até que a resposta seja retornada, o event loop remove essa request da fila e leva para uma outra thread para que a fila de funções não pare de ser executada, até que essa resposta fique pronta e o evet loop devolva essa resposta para a fila e ela seja devolvida a quem a solicitou.</p>\n<p>G﻿erenciadores de Pacotes do Node.jS</p>\n<p>T﻿emos o NPM e o Yarn como gerenciadores de pacotes, que nos permitem instalar bibliotecas externas e também criar e disponibilizar nossos próprios pacotes.</p>\n<p>F﻿rameworks</p>\n<p>Dentre os mais conhecidos temos o express, o nest, o egg, o adonis, hapi, koa.</p>","frontmatter":{"title":"Conceitos do Node.js","date":"December 07, 2022","description":"Alguns conceitos básicos sobre o Node.js"}},"previous":{"fields":{"slug":"/como-configurar-o-cors-no-node-js/"},"frontmatter":{"title":"Como configurar o CORS no Node.js"}},"next":{"fields":{"slug":"/conceitos-sobre-api-rest/"},"frontmatter":{"title":"Conceitos sobre API REST"}}},"pageContext":{"id":"1659406f-fbdd-53dd-a496-60aeddc52151","previousPostId":"cccd55cd-2b4c-58c4-a4d5-5160311a8623","nextPostId":"269d981e-39f8-53f9-a092-8f80ff963652"}},"staticQueryHashes":["2841359383","3257411868"]}