Criado por Ryan Dahl em 2009, o Node.js é um interpretador de JavaScript assíncrono que possui código aberto orientado a eventos. Em suma, ele pode ser definido como um ambiente de execução JavaScript server-side.
Com ele é possível criar aplicações Javascript para serem executadas como uma aplicação standalone, ou seja, não necessitando de um browser para sua execução.
O interpretador possui foco na migração da programação do frontend para os servidores. Como resultado, temos aplicações de alta escalabilidade, manipulando vários processamentos simultâneos em uma única máquina.
Seu principal diferencial é a execução das requisições em single-thread, na qual apenas uma thread é responsável por executador todo o código JavaScript. Isso torna desnecessário a criação novas threads, o que resultaria em mais recursos computacionais sendo utilizados.
Por que usar Node.js?
Certamente, o principal motivo a levar muitas empresas a adotarem o Node.Js é a sua alta capacidade de escala. Apesar de ser uma tecnologia recente, ela já é utilizada por grandes empresas como o Netflix, Uber e LinkedIn.
Um ambiente Node.js, como comentado anteriormente, não exige muitos recursos computacionais. Se ele for utilizado com um conjunto de ferramentas Docker, por exemplo, você terá mais ganho na velocidade de deploy e uma replicação de máquinas pode ser muito mais significativo. No caso de ambientes escaláveis, de micro-serviços e serveless, representa menos custo e mais eficiência.
Com a mesma linguagem sendo utilizada no frontend e no backend, a equipe pode reaproveitar muitos recursos.
O Node.Js conta com um gerenciador de pacotes reutilizáveis denominado NPM (Node Package Manager), o maior repositório de softwares. O pacote mais conhecido é o Express.js, um completo framework para desenvolvimento de aplicações Web. O NPM também fornece pacotes reusáveis disponíveis gratuitamente.
Além disso tudo, você pode contar com o suporte das principais empresas de armazenamento em nuvem como por exemplo a AWS, Google Cloud e a Microsoft Azure, que por sua vez, possui suporte nativo ao NodeJS.
Surgimento do Node.Js
A linguagem Javascript foi criada em 1995 e se tornou a queridinha entre os programadores web. Tanto que se tornou a linguagem padrão para o desenvolvimento client-side dos browsers e, consequentemente, de toda a Web.
Apesar de todos esses anos de vida do Javascript, é bem recente o seu uso para server-side. Desde a criação desta, houveram várias e várias tentativas de utilizá-la no server-side, todas fracassadas graças à sua baixa performance comparada ao PHP e ao Java, já existentes no mercado.
Com a evolução da Web nos últimos anos, os motores de execução da linguagem passaram por diversas evoluções e em 2009 finalmente foi criado o primeiro ambiente de execução Javascript server-side: O Node.Js!
Site oficial
Visite o site oficial para mais informações: https://nodejs.org/en/