Está en la página 1de 16

‘Unidad 4:’

{ Programación del Lado


del Servidor y Persistencia
de Datos
}
1
2
CONTENIDOS DE LA CLASE {
3
4
5
6
7
8 Introducción a Node.Js
9
10
Peticiones Bloqueantes y No Bloqueantes
11
12
13
14 }
Argentina Programa 4.0
1
2
OBJETIVOS {
3
4
5
Conocer el potencial general de JavaScript fuera del navegador
6
7
8
9
Conocer las ventajas y desventajas que éste ofrece
10
11
Conocer cómo funcionan las peticiones de las líneas de
12
código escritas
13
14 }
Argentina Programa 4.0
UNIDAD 4 - Programación del Lado del Servidor y
Persistencia de Datos

1
{
2
3
4
5
6 [ Introducción a Node.Js
7
8
Peticiones Bloqueantes y No Bloqueantes. ]
9
10
11
12
13
14 }
Argentina Programa 4.0
Introducción a Node.Js UNIDAD 4 - Programación del Lado del Servidor y
Peticiones Bloqueantes y No Bloqueantes Persistencia de Datos

1 ¿Quién creo Node.js y con qué propósito? {


2
3 < Node.js fue creado en el año 2009 por Ryan Dahl, un desarrollador de
4 software, con el objetivo de construir aplicaciones web escalables y de alta
velocidad en tiempo real utilizando JavaScript en el servidor. Dahl se basó
5
en la idea de que el modelo de entrada/salida no bloqueante y basado en
6 eventos es más eficiente que los modelos de entrada/salida bloqueantes
7 utilizados por los servidores web tradicionales.
8
Ryan Dahl creó Node.js para que los desarrolladores pudieran utilizar
9
JavaScript tanto en el lado del cliente como en el del servidor, simplificando
10 así el proceso de desarrollo de aplicaciones web escalables y de alta
11 velocidad. Desde su lanzamiento, Node.js se ha convertido en una
12 herramienta popular para desarrollar aplicaciones web modernas en una
13 variedad de proyectos. >
14
}
Argentina Programa 4.0
Introducción a Node.Js UNIDAD 4 - Programación del Lado del Servidor y
Peticiones Bloqueantes y No Bloqueantes Persistencia de Datos

1 ¿Qué es Node.Js? {
2
3 < Node.js es un entorno de tiempo de ejecución de JavaScript que se basa
en el motor JavaScript de Google Chrome, V8, que proporciona un alto
4
rendimiento y una ejecución rápida de JavaScript en el servidor, para
5 ejecutar código JavaScript fuera de un navegador web. Es decir, Node.js
6 nos permite escribir aplicaciones del lado del servidor utilizando JavaScript.
7
8 Además, Node.js cuenta con una gran cantidad de módulos de terceros
disponibles en su gestor de paquetes, npm, que permiten a los
9 desarrolladores utilizar funcionalidades preconstruidas para construir
10 aplicaciones más rápidamente. >
11
12
13
14
}
Argentina Programa 4.0
Introducción a Node.Js UNIDAD 4 - Programación del Lado del Servidor y
Peticiones Bloqueantes y No Bloqueantes Persistencia de Datos

1 Ejemplos de aplicaciones que utilizan Node.Js {


2
3
4 <Netflix> { es uno de los mayores usuarios de Node.js y lo utiliza en
gran parte de su infraestructura de back-end para aplicaciones de
5 streaming de video. Netflix utiliza Node.js para construir aplicaciones
6 web escalables y de alta velocidad que pueden manejar grandes
7 volúmenes de tráfico y datos. }
8
9 <LinkedIn> { LinkedIn utiliza Node.js para construir aplicaciones
10 web escalables y de alta velocidad que pueden manejar grandes
11 volúmenes de tráfico y datos. En particular, LinkedIn utiliza Node.js
12 para construir su sistema de mensajería en tiempo real y su
sistema de notificaciones. }
13
14
}
Argentina Programa 4.0
Introducción a Node.Js UNIDAD 4 - Programación del Lado del Servidor y
Peticiones Bloqueantes y No Bloqueantes Persistencia de Datos

1 Ejemplos de aplicaciones que utilizan Node.Js {


2
3
4
<Uber> { Uber utiliza Node.js para construir su aplicación de
5 conductor y para construir sus servicios de back-end que manejan
6 solicitudes de viajes y pagos. }
7
8
9
10 <PayPal> { PayPal utiliza Node.js para construir aplicaciones web
11 escalables y de alta velocidad que pueden manejar grandes
12 volúmenes de transacciones de pago en línea. }
13
14
}
Argentina Programa 4.0
Introducción a Node.Js UNIDAD 4 - Programación del Lado del Servidor y
Peticiones Bloqueantes y No Bloqueantes Persistencia de Datos

1 Ventajas y desventajas de Node.Js {


2 <VENTAJAS>
3 < Permite escribir código JavaScript tanto en el servidor como en el cliente, lo que puede facilitar el
desarrollo de aplicaciones web complejas. >
4
5 < Utiliza el modelo de programación sin bloqueo (non-blocking) y basado en eventos, lo que permite
que una sola instancia de Node.js maneje muchas conexiones simultáneamente sin bloquear el hilo de
6 ejecución, lo que lo hace altamente escalable y eficiente en términos de recursos.>
7
< Tiene una gran cantidad de módulos de terceros disponibles en su gestor de paquetes, npm, que
8
permiten a los desarrolladores utilizar funcionalidades preconstruidas para construir aplicaciones más
9 rápidamente.>
10 < Es multiplataforma, lo que significa que se puede ejecutar en diferentes sistemas operativos, como
11 Windows, macOS y Linux.>
12
< Ofrece un excelente rendimiento y velocidad gracias al motor JavaScript V8 de Google Chrome..>
13
14 }

Argentina Programa 4.0


Introducción a Node.Js UNIDAD 4 - Programación del Lado del Servidor y
Peticiones Bloqueantes y No Bloqueantes Persistencia de Datos

1 Ventajas y desventajas de Node.Js {


2 <DESVENTAJAS>
3 < Node.js no es adecuado para aplicaciones que requieren una gran cantidad de operaciones de
4 entrada/salida (I/O) intensivas en el disco, ya que su modelo de programación sin bloqueo no funciona
bien con este tipo de operaciones. >
5
6
< A pesar de que Node.js tiene una gran cantidad de módulos disponibles, algunos de ellos pueden
7 tener problemas de calidad o seguridad, por lo que es importante ser cuidadoso al seleccionar los
8 módulos que se utilizan en una aplicación. >
9
10 < Node.js puede ser difícil de aprender para aquellos desarrolladores que no están familiarizados con la
11 programación asincrónica y el modelo de eventos. >
12
13
14 }

Argentina Programa 4.0


Introducción a Node.Js UNIDAD 4 - Programación del Lado del Servidor y
Peticiones Bloqueantes y No Bloqueantes Persistencia de Datos

1 ¿Qué son las peticiones bloqueantes? {


2
3 < Las peticiones bloqueantes (también conocidas como I/O bloqueante) son
4 aquellas que detienen la ejecución del programa hasta que se completa la
operación de entrada/salida (I/O). En otras palabras, cuando un programa
5 realiza una operación de entrada/salida bloqueante, el hilo de ejecución que
6 la realiza se detiene hasta que la operación se completa.
7
8 En Node.js, las operaciones de entrada/salida bloqueantes se realizan de
forma síncrona, lo que significa que el hilo de ejecución que las realiza se
9
detiene hasta que se completa la operación. Esto puede ser problemático
10 en aplicaciones que necesitan manejar múltiples solicitudes
11 simultáneamente, ya que una operación de entrada/salida bloqueante
12 puede detener todo el hilo de ejecución y hacer que la aplicación se
bloquee. >
13
14
}
Argentina Programa 4.0
Introducción a Node.Js UNIDAD 4 - Programación del Lado del Servidor y
Peticiones Bloqueantes y No Bloqueantes Persistencia de Datos

1 ¿Qué son las peticiones no bloqueantes? {


2
< Las peticiones no bloqueantes (también conocidas como I/O no
3
bloqueante) son aquellas que permiten que un programa continúe
4 ejecutándose mientras se realizan operaciones de entrada/salida (I/O).
5 Cuando un programa realiza una operación de entrada/salida no
6 bloqueante, el hilo de ejecución que la realiza no se detiene y puede
continuar procesando otras tareas mientras se realiza la operación de
7
entrada/salida.
8
9 En Node.js, las operaciones de entrada/salida no bloqueantes se realizan
10 de forma asincrónica, lo que significa que se realizan en segundo plano sin
11 detener el hilo principal de ejecución. En lugar de bloquear el hilo de
ejecución, Node.js delega las operaciones de entrada/salida a un "thread
12 pool" dedicado que maneja estas operaciones en segundo plano. Cuando
13 se completa una operación de entrada/salida asincrónica, se envía una
14 señal al hilo principal de ejecución para que se procese la respuesta. >
}
Argentina Programa 4.0
Introducción a Node.Js UNIDAD 4 - Programación del Lado del Servidor y
Peticiones Bloqueantes y No Bloqueantes Persistencia de Datos

1
¿Cómo afectan las peticiones bloqueantes y no bloqueantes al
2 rendimiento de una aplicación web? {
3
< El uso de operaciones de entrada/salida no bloqueantes en Node.js es
4 importante para garantizar la escalabilidad de las aplicaciones. Cuando se
5 realizan operaciones de entrada/salida bloqueantes en un hilo de ejecución,
6 este hilo se detiene hasta que se completa la operación, lo que puede limitar
la capacidad de la aplicación para manejar múltiples solicitudes
7
simultáneamente. Por otro lado, cuando se utilizan operaciones de
8 entrada/salida no bloqueantes, el hilo de ejecución no se detiene y puede
9 seguir procesando otras tareas, lo que permite que la aplicación maneje un
10 mayor número de solicitudes simultáneamente. >
11
12
13
14
}
Argentina Programa 4.0
Introducción a Node.Js UNIDAD 4 - Programación del Lado del Servidor y
Peticiones Bloqueantes y No Bloqueantes Persistencia de Datos

1 ¿Por qué es importante el rendimiento web? {


2
< Experiencia del usuario: El rendimiento web tiene un impacto directo en la experiencia del usuario.
3 Los usuarios esperan una respuesta rápida y eficiente de las aplicaciones web. Si una aplicación web
4 es lenta y tarda mucho en cargar, los usuarios pueden perder la paciencia y abandonar el sitio web, lo
que resulta en una mala experiencia del usuario y puede afectar negativamente la reputación de la
5 empresa. >
6
< Conversión de ventas: Si una tienda en línea o una aplicación de comercio electrónico tiene un
7 rendimiento deficiente, los usuarios pueden abandonar la compra y buscar en otro sitio web. Un
8 rendimiento web óptimo puede mejorar la tasa de conversión y aumentar las ventas. >

9 < SEO: El rendimiento web también tiene un impacto en el posicionamiento de los motores de
búsqueda. Los motores de búsqueda como Google dan prioridad a los sitios web que ofrecen una
10 experiencia rápida y eficiente a los usuarios. Si un sitio web tiene un rendimiento lento, puede verse
11 penalizado en los resultados de búsqueda y tener un menor tráfico. >
12 <Costo: Una aplicación web con un rendimiento deficiente puede ser costosa de mantener. Un servidor
13 ineficiente y un rendimiento deficiente pueden requerir más recursos de servidor y aumentar los costos
14 } de alojamiento web. >

Argentina Programa 4.0


Introducción a Node.Js UNIDAD 4 - Programación del Lado del Servidor y
Peticiones Bloqueantes y No Bloqueantes Persistencia de Datos

1 ¿Qué es un servidor? {
2
3
< Un servidor es un software o hardware que proporciona servicios a otros
4 programas o dispositivos, conocidos como clientes. En el contexto del
5 desarrollo web, un servidor se refiere a un software que sirve contenido web
6 a los clientes (navegadores web) que solicitan páginas web y otros recursos
a través de Internet.
7
8 Además de servir contenido web, un servidor también puede realizar otras
9 funciones en el desarrollo web, como manejar sesiones de usuario,
10 autenticar usuarios y procesar pagos en línea. >
11
12
13
14
}
Argentina Programa 4.0
Introducción a Node.Js UNIDAD 4 - Programación del Lado del Servidor y
Peticiones Bloqueantes y No Bloqueantes Persistencia de Datos

1
¿Cúales son los usos más comunes de un servidor en el
2 desarrollo web? {
3 1) <Servir páginas web y recursos: El servidor web es responsable de recibir solicitudes de los clientes y
devolver el contenido solicitado en forma de páginas web, archivos de imagen, archivos de audio y
4
otros recursos. >
5
2) <Procesar solicitudes y respuestas HTTP: El servidor web utiliza protocolos de comunicación como
6 HTTP para comunicarse con los navegadores web y enviar información de ida y vuelta. >
7
8 3) <Gestión de sesiones de usuario: El servidor puede mantener un registro de la actividad de los
9 usuarios y almacenar información de sesión para permitir el acceso a recursos protegidos. >
10
11 4) <Autenticación de usuarios: El servidor puede verificar las credenciales del usuario y garantizar que
solo los usuarios autorizados puedan acceder a recursos protegidos.>
12
13 5) <Procesamiento de pagos en línea: El servidor puede integrarse con servicios de pago en línea para
14 } procesar pagos y garantizar que las transacciones se realicen de manera segura. >

Argentina Programa 4.0

También podría gustarte