Introducción a los servicios web de Amazon en Node.js

I

Introducción

Servicios web de Amazon (AWS) es un proveedor de computación en la nube con una serie de servicios extremadamente populares. Desde su lanzamiento en 2006, se han convertido en un actor clave en el desarrollo y la implementación de las principales aplicaciones empresariales. Sus servicios son escalables, flexibles e innovadores en muchos aspectos, mientras mantienen el costo relativamente bajo en comparación con el autohospedaje.

Estas son solo algunas de las razones por las que grandes empresas como Adobe, Airbnb, Autodesk, BMW, la Agencia Espacial Europea, Ticketmaster, Xiaomi, Twitch, Netflix, Facebook, LinkedIn, Twitter, etc., comenzaron a alojar sus aplicaciones en la plataforma AWS.

Hemos compilado una serie de artículos sobre la integración con estos servicios utilizando Node.js para ayudarlo a ponerse al día con algunos de los servicios más populares de AWS.

Almacenamiento de archivos

Servicio de almacenamiento simple de AWS (S3)

Gran parte del software y las aplicaciones web que creamos hoy requieren algún tipo de alojamiento para archivos: imágenes, facturas, archivos de audio, etc. La forma tradicional de almacenar archivos era simplemente guardarlos en el disco duro del servidor.

Sin embargo, guardar archivos en el disco duro del servidor tiene limitaciones, como no poder escalar, tener que asignar espacio antes de usarlo y precios mucho más altos. Sin mencionar que solicitar una gran cantidad de archivos de gran tamaño, como imágenes, por ejemplo, puede generar una gran presión en el servidor.

Para descargar los servidores, los desarrolladores comenzaron a alojar archivos con proveedores de almacenamiento potenciales como AWS S3, Google Cloud Storage, etc.

En este artículo, le mostraremos cómo escribir código Node.js para cargar archivos en S3:

  • Carga de archivos en AWS S3 con Node.js

Soporte de mensajería

Servicio de notificación simple de AWS (SNS)

Servicio de notificación simple de AWS (SNS) es un servicio súper escalable que permite a los usuarios implementar el modelo de publicación / suscripción con facilidad.

Esto nos permite enviar mensajes de texto, correos electrónicos, notificaciones automáticas u otros mensajes automáticos a otros objetivos a través de múltiples canales al mismo tiempo.

En esta publicación, aprenderá cómo crear una aplicación web que pueda publicar un mensaje para varios suscriptores a la vez por correo electrónico, todos usando SNS:

  • Publicación y suscripción a mensajes de AWS SNS con Node.js

Servicio de cola simple de AWS (SQS)

Con el aumento de la complejidad de los sistemas de software modernos, surgió la necesidad de romper sistemas que habían superado su tamaño inicial. Este aumento en la complejidad de los sistemas hizo que fuera más difícil mantenerlos, actualizarlos y mejorarlos.

Esto allanó el camino para los microservicios que permitieron dividir los sistemas monolíticos masivos en servicios más pequeños que están débilmente acoplados pero que interactúan para brindar la funcionalidad total de la solución monolítica inicial. El acoplamiento suelto proporciona agilidad y facilita el proceso de mantenimiento y la adición de nuevas funciones sin tener que modificar sistemas completos.

Es en estas arquitecturas de microservicios donde los sistemas de colas resultan útiles para facilitar la comunicación entre los servicios separados que componen la aplicación completa.

En esta publicación, nos sumergiremos en los sistemas de colas, particularmente Servicio de cola simple de Amazon (SQS) y demostrar cómo podemos aprovechar sus características en un entorno de microservicio:

  • Message Queue Server en Node.js con AWS SQS

Soporte de base de datos

Servicio de base de datos relacional de AWS (RDS)

Ya no es una exageración decir que la información y los datos gobiernan el mundo. Casi todas las aplicaciones, desde las redes sociales y los sitios web de comercio electrónico, hasta las simples aplicaciones de seguimiento del tiempo y de dibujo, se basan en la tarea básica y fundamental de almacenar y recuperar datos para funcionar como se espera.

Servicio de base de datos relacional de Amazon (RDS) proporciona una manera fácil de configurar una base de datos en la nube utilizando cualquiera de una amplia gama de tecnologías de bases de datos relacionales.

En este artículo, aprenderá cómo configurar una base de datos en RDS y almacenar datos en ella con una aplicación web Node:

  • Uso de AWS RDS con Node.js y Express

Computación en la nube

AWS Elastic Compute Cloud (EC2)

Una vez que haya escrito una aplicación web, existen docenas de ofertas para que su aplicación esté en línea y que otras personas puedan utilizarla. Una oferta conocida y el servicio más popular en AWS es Nube informática elástica (EC2).

EC2 es una parte fundamental de AWS y muchos de los otros servicios de AWS se basan en él; por lo tanto, es bueno comprender qué es EC2 y cómo implementar su aplicación en él.

En este tutorial, crearemos una aplicación básica de Node.js con Docker, iniciaremos y configuraremos una instancia EC2 e implementaremos nuestra aplicación en ella:

  • Implementación de aplicaciones Node.js en AWS EC2 con Docker

AWS Lambda

La familia de arquitectura informática a la que pertenece AWS Lambda se denomina Computación sin servidor o, a veces, Función como servicio. Es innovador para los desarrolladores porque no es necesario mantener los servidores. Cada vez que se crea y ejecuta una función de AWS Lambda, se activa un contenedor para servirla, que se comparte entre otros contenedores para mantener un alto uso de los recursos.

El código se implementa en el contenedor y luego se ejecuta. Por lo tanto, cada solicitud posterior es más rápida porque AWS se salta la creación inicial del contenedor si ya existe.

En este artículo, obtendrá más información sobre el servicio Lambda y cómo poner su código en funcionamiento:

  • Introducción a AWS Lambda con Node.js

About the author

Ramiro de la Vega

Bienvenido a Pharos.sh

Soy Ramiro de la Vega, Estadounidense con raíces Españolas. Empecé a programar hace casi 20 años cuando era muy jovencito.

Espero que en mi web encuentres la inspiración y ayuda que necesitas para adentrarte en el fantástico mundo de la programación y conseguir tus objetivos por difíciles que sean.

Add comment

Sobre mi

Últimos Post

Etiquetas

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con tus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, aceptas el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad