¿Qué es la computación Sin Servidor (Serverless)?
Definición, casos de uso y patrones de diseños de Serverless

Unlock the Potential of Innovation through Cutting-edge technology solutions.
Search for a command to run...
Definición, casos de uso y patrones de diseños de Serverless

Unlock the Potential of Innovation through Cutting-edge technology solutions.
No comments yet. Be the first to comment.
En este apartado exploraos temas relacionados al Cloud Computing o Computación en la Nube. También analizaremos el impacto que tiene para profesionales, empresas y negocios sobre el Cloud Computing
Infraestructura como Servicio o Infrastructure-as-a-Service (IaaS)
La ciencia que te ayuda a tomar decisiones impulsadas con datos.

El sistema inteligente de entrega de anuncios de Meta

Descubre las unidades de medida para el almacenamiento de datos.

Descubre la nueva IA de Meta

Una nueva generación de sistemas de IA que entiende el mundo.

La manera de cómo ejecutamos aplicaciones se han estado modernizando desde la llegada de la computación en la nube. "Serverless" traducido al castellano Sin Servidor, es uno de los tipos de servicios que los proveedores de la computación en la nube ofrece a sus clientes bajo demanda.
"Serverless" es un servicio bajo demanda en la nube para desplegar y ejecutar código con recursos dinámicos.
Para este servicio, el proveedor aprovisiona y gestiona los recursos como: CPU, GPU, memoria RAM, etc., de esta forma se reduce gastos en administración y mejora la seguridad para el cliente.
Existen diferentes definiciones del "Serverless" (Sin servidor) pero presento la más utilizada:
Serverless computing es un modelo de ejecución de computación en la nube en el que el proveedor de los servicios en la nube destina por demanda recursos de las máquinas virtuales, cuidando de los servidores por sus clientes.
Wikipedia. (2023, 9 octubre). Serverless computing. Wikipedia, la enciclopedia libre. https://es.wikipedia.org/wiki/Serverless_computing
La computación sin servidor o "Serverless" ofrece Backend como servicio (BaaS) y función como servicio(FaaS).
"Backend as a Service(BaaS)" es un paradigma donde el cliente desarrolla, ejecuta y administra funcionalidades de aplicativos sin tener que mantener y administrar la infraestructura donde se ejecuta.
"Function as a Service (FaaS)" es un servicio online que gestiona actividades específicas dentro de un aplicativo como notificaciones, autenticación o gestión de usuarios.
Estable y altamente confiable.
Reducción de costos
Eliminación de administración de servidores.
Entorno de ejecución con recursos dinámicos (CPU, RAM, GPU, etc.).
Normalmente, el costo del servicio es por tiempo de ejecución del código que se concluye a un reto para los desarrolladores de software el poder crear algoritmos de alto rendimiento.
Escalamiento elástico por la forma dinámica de aprovisionar recursos.
Es una arquitectura orientada a eventos, que se ejecuta el algoritmo del programa ante un evento.
Aplicaciones Web
Procesamiento de Datos en tiempo real
Aprendizaje Automático (Inteligencia Artificial)
Transcodificación de vídeo
Servicio de Autenticación
Internet de las Cosas
Chatbots
Backend para Aplicaciones Móviles
AWS Lambda
Google Cloud Functions
IBM Cloud Functions
Azure Functions
Huawei Cloud Functions
Alibaba Cloud Function Compute
OpenShift Serverless Functions
En el desarrollo de software recurrimos a patrones de diseño para la solución de un cierto tipo de problemas, así que en una arquitectura basada en "serverless" cambia la forma de cómo desarrollamos software.
No todos los patrones de diseño más comunes se adaptan a "Serverless", para eso un desarrollador o un arquitecto de software debe tener la capacidad de elegir el mejor patrón de diseño para la arquitectura de un proyecto.
Estos son los patrones de diseño que se pueden adaptar a la arquitectura Serverless:
Event-driven
Command
Pub/Sub
Event workflows
Strangler
He presentado la definición más aceptada y aspectos generales importantes del "serverless"; sin embargo, existen numerosas investigaciones que hace que siga modernizándose y nosotros como desarrolladores o tomadores de decisión en tecnologías, debemos adaptarnos en la forma vanguardista de cómo desarrollamos software. Esto es un paradigma, así que nos invita a comprender más del tema para desarrollar algoritmos que puedan funcionar y tener alto rendimiento.
Me interesa conocer tu opinión, suscríbete y deja tus comentarios.
¡Muchas Gracias! 🚀