Seidor
chica programando

05 de juny de 2024

Què és Node.js i per a què serveix?

Node.js és un entorn JavaScript que ens permet executar al servidor, de manera asíncrona, amb una arquitectura orientada a esdeveniments i basat en el motor V8 de Google. És una plataforma que avança molt ràpidament i cada vegada està més present al mercat.

Com funciona Node.js?


El motor V8 compila Javascript en codi màquina natiu en comptes d'interpretar-lo en el navegador, aconseguint així una velocitat molt més alta. Node és de codi obert i pot executar-se en Mac OS X, Windows i Linux.

Javascript del costat del servidor


Tradicionalment Javascript s'ha utilitzat únicament per a tasques menors en el navegador, però actualment ja és un llenguatge de programació tan potent com qualsevol altre. A més JavaScript disposa d'un model d'esdeveniments excel·lent ideal per a la programació asíncrona.

JavaScript és un llenguatge conegut per milions de programadors, així que la corba d'aprenentatge de Node és reduïda, ja que no sol ser necessari aprendre un nou llenguatge.

Programació asíncrona


A més de l'alta velocitat d'execució, Node.js disposa del Bucle d'Esdeveniments (Event Loop), que permetrà gestionar enormes quantitats de clients de forma asíncrona. Tradicionalment per a treballar de forma asíncrona les aplicacions es valien de la programació basada en fils (programming threaded applications), però això suposa la utilització (normalment ineficaç) d'un espai de memòria que va escalant a mesura que la quantitat de clients connectats a la nostra aplicació augmenta.

Generalment cada fil suposa la utilització de 2MB de memòria, la qual cosa en un sistema de 8GB de RAM suposa un màxim teòric de connexions de 4.000 usuaris. Per tant, si necessitem gestionar grans quantitats de connexions haurem d'ampliar el nombre de servidors.

La solució de Node


Node.js resol aquest problema canviant la manera de realitzar les connexions amb el servidor. En comptes de generar un nou fil E/S per a cada client, cada connexió dispara l'execució d'un esdeveniment dins del procés del motor de Node. D'aquesta manera, Node permet que un sol servidor que l'executi pugui suportar desenes de milers de connexions.

Gràcies a Node, LinkedIn va passar d'utilitzar 30 servidors a únicament 3!

Potser et pugui interessar

05 de juny de 2024

Què és Redis?

Redis és un motor de base de dades open source amb llicència BSD. Basa el seu funcionament en l'ús de taules de hashes (clau – valor) i pot arribar a usar-se com a base de dades persistent.

SEIDOR
05 de juny de 2024

Què és ElasticSearch?

ElasticSearch és un motor de cerca orientat a documents que ens permet indexar un gran volum de dades per poder fer consultes sobre ells posteriorment.

SEIDOR