AWS Lambda: El futuro de la computación sin servidores

La idea original detrás de la computación en la nube es la capacidad de escalar el poder computacional a las necesidades y crecimiento de tu organización, sin tener que adquirir de antemano el hardware físico o lidiar con las tareas correspondientes de instalación, mantenimiento y desmantelamiento. Los servicios de "sin servidor" ("serverless"), como AWS Lambda, son el siguiente paso lógico en el modelo de entrega de recursos informáticos "como servicio". (Observación: este artículo sobre AWS Lambda también está disponible como descarga gratuita en formato PDF.)

Esta introducción a AWS Lambda de Newsmatic es una guía básica sobre el marco de la computación sin servidor. El artículo se revisará periódicamente para reflejar las últimas actualizaciones e integraciones.

Índice de Contenido
  1. ¿Qué es AWS Lambda?
  2. Beneficios de usar AWS Lambda
  3. Desarrollo en AWS Lambda: Diferencias con otros servicios en la nube
  4. ¿A quién afecta AWS Lambda?
  5. ¿Cuándo se lanzó AWS Lambda?
  6. Competidores de AWS Lambda
  7. ¿Cómo puedo obtener AWS Lambda?

¿Qué es AWS Lambda?

AWS Lambda es el componente de computación sin servidor del catálogo de AWS, que permite a los desarrolladores ejecutar código arbitrario a pedido, sin la necesidad de aprovisionar o administrar un "servidor completo" o una instancia informática como Amazon EC2. Después de ser activadas, las tareas de AWS Lambda se ejecutan típicamente en cuestión de milisegundos. En una operación de AWS Lambda, el tiempo de procesamiento está limitado a 300 segundos y se factura por la cantidad de recursos informáticos utilizados, redondeando al milisegundo más cercano.

Al igual que cualquier otro servicio de computación en la nube, la facturación refleja la cantidad de recursos informáticos realmente utilizados; si no se está ejecutando ninguna tarea, no hay cargos.

Beneficios de usar AWS Lambda

La implementación inteligente de AWS Lambda para los flujos de trabajo de tus aplicaciones puede aumentar el rendimiento de la infraestructura existente en tu organización, ya que las tareas se transfieren a funciones de Lambda. Las funciones de AWS Lambda se ejecutan bajo demanda cuando se invocan desde una aplicación, lo que permite cargas de trabajo altamente variables y autogestionadas que van más allá de lo que las reglas de administración del ciclo de vida de las máquinas virtuales (VM) alojadas en la nube pueden lograr en términos de rendimiento. Al diseñar aplicaciones que dependen de funciones sin servidor, los desarrolladores pueden reducir el costo de las implementaciones en la nube en casos de uso donde sea posible transferir cargas de trabajo variables de EC2 a Lambda, disminuyendo así las instancias de alta capacidad infrautilizadas.

Asimismo, AWS Lambda es útil para manejar procesos orientados a la nube que involucran diferentes tipos de datos. Por ejemplo, en un sitio web de intercambio de fotos, AWS Lambda puede ser invocado para redimensionar imágenes en miniatura cuando se agrega una foto a un cubo de Amazon S3. Una operación de AWS Lambda puede ser activada en respuesta a cualquier llamada de API en AWS.

Cómo funciona el protocolo FTP y cómo resolver problemas relacionados con él

AWS Lambda admite de forma nativa código en Java, Go, PowerShell, Node.js, C#, Python y Ruby, con una API de tiempo de ejecución adicional que permite el uso de más lenguajes de programación. Debido al tamaño de la unidad de facturación de Lambda, que es de 100 milisegundos, no se recomienda el uso de lenguajes como Java, que tienen una sobrecarga adicional para iniciar la ejecución. AWS Lambda se puede utilizar para invocar cualquier proceso arbitrario admitido en Amazon Linux.

En comparación con las VM alojadas en la nube, como EC2, el tiempo de mantenimiento y los costos operativos son responsabilidad del operador de la plataforma. Tareas como aprovisionar servidores, instalar y configurar sistemas operativos, administrar licencias asociadas e implementar equilibradores de carga no son consideraciones para las plataformas sin servidor, incluida AWS Lambda.

En este sentido, Ory Segal, CTO de PureSec, una empresa de seguridad sin servidor, afirma que "usar AWS Lambda será más económico, alrededor de 3 a 10 veces más barato, en comparación con servicios tradicionales basados en VM/contenedores como EC2; sin embargo, esto solo se aplica a ciertos tipos de cargas de trabajo. En el peor de los casos, AWS Lambda puede ser comparable en costos a EC2 o ligeramente más caro. En realidad, todo depende de cómo se esté utilizando AWS Lambda. Las organizaciones deben evaluar cuidadosamente los tipos de cargas de trabajo que necesitan ejecutar y elegir la opción de cómputo que tenga más sentido."

Desarrollo en AWS Lambda: Diferencias con otros servicios en la nube

La computación sin servidor representa un cambio arquitectónico significativo en comparación con las máquinas virtuales alojadas en la nube, como EC2. Para las máquinas virtuales, tiene sentido ejecutar las tareas en serie para evitar que un único trabajador monopolice el poder computacional de la VM. En las plataformas sin servidor como AWS Lambda, la paralelización es clave para el rendimiento y el ahorro de costos.

Según Segal, "existen ciertas 'acciones' que se pueden reutilizar fácilmente en varias ejecuciones", como las "conexiones a recursos en la nube, como bases de datos o conexiones de red persistentes, entre otras. Si reutilizas recursos y conexiones de manera inteligente, solo ocurrirán una vez, durante el inicio en frío, lo que te ahorrará tiempo de cómputo valioso".

Segal también señala que "debes esforzarte en diseñar tu aplicación de manera que se ejecuten múltiples funciones más pequeñas en paralelo" y asignar cantidades adecuadas de memoria a las funciones, ya que "una mayor asignación de memoria puede reducir drásticamente el tiempo de cómputo general".

Microsoft lanza servicio gratuito de almacenamiento en la nube para usuarios de Windows

El aspecto "el tiempo es dinero" en la facturación por hora de EC2 es una preocupación más apremiante con AWS Lambda, que se factura en unidades de 100 milisegundos. Desarrollar aplicaciones con una mentalidad centrada en el sin servidor es fundamental para utilizar de manera efectiva Lambda; también debes tener en cuenta que reducir el consumo de recursos estirará significativamente los presupuestos.

Las prácticas de seguridad para AWS Lambda y otras plataformas de computación sin servidor son discretamente diferentes de los métodos tradicionales. La variedad de fuentes de eventos que una función de AWS Lambda puede manejar aumenta la superficie de ataque. Segal destaca que "la supervisión de la seguridad en arquitecturas sin servidor sigue siendo más complicada que en entornos de software estándar, lo que genera puntos ciegos para las organizaciones que no usan soluciones de seguridad nativas para el sin servidor" y que "las herramientas de escaneo automatizado actualmente no están adaptadas para examinar aplicaciones sin servidor".

¿A quién afecta AWS Lambda?

Los desarrolladores pueden aprovechar las plataformas de computación sin servidor, como AWS Lambda, para crear aplicaciones escalables según las necesidades de cargas de trabajo en aumento o variables; esta escalabilidad se puede utilizar para disminuir efectivamente el costo operativo de la aplicación para uso empresarial.

Aunque el uso de servicios en la nube tradicionales generalmente reduce la necesidad de gestionar servidores locales, aliviando la carga de trabajo de los administradores de centros de datos, el uso de AWS Lambda aliviaría la carga de los operadores de operaciones encargados de garantizar el correcto funcionamiento de las VM alojadas en servicios en la nube tradicionales.

En principio, el uso de plataformas de computación sin servidor debería ser transparente para los usuarios finales de las aplicaciones que las utilizan. La escalabilidad bajo demanda de AWS Lambda es más receptiva en comparación con la escalabilidad por umbral común en las VM y la capacidad relativamente fija de las implementaciones de servidores locales. Utilizada de manera eficiente, esto resulta en una disminución potencial de los tiempos de inactividad en situaciones de carga pesada.

¿Cuándo se lanzó AWS Lambda?

AWS Lambda se lanzó en noviembre de 2014 en la conferencia anual de AWS re:Invent. Las implementaciones en el mundo real han aumentado recientemente a medida que los desarrolladores se familiarizan más con la plataforma. Amazon destaca a VidRoll, Localytics, MLB Advanced Media, The Washington Post y Zillow como primeros usuarios de AWS Lambda en casos de estudio.

Cómo evitar que el archivo de registro de transacciones en SQL Server crezca demasiado grande

Desde su lanzamiento en 2014, Lambda ha experimentado una serie de cambios. Más recientemente, en re:Invent 2020, Amazon anunció cambios en la facturación que reduce los costos de uso de los 100 milisegundos más cercanos al milisegundo individual más cercano, el soporte para imágenes de contenedores Lambda de hasta 10 GB y el lanzamiento general del panel de control CloudWatch Lambda Insights.

Competidores de AWS Lambda

AWS Lambda fue el primer producto de computación sin servidor o basada en eventos ofrecido por los proveedores de servicios en la nube pública. Como resultado de esa posición de pionero, AWS Lambda proporciona la plataforma más completa y madura, con un ecosistema más amplio de integraciones de terceros que otros proveedores.

El producto Cloud Functions de Google es la principal competencia de AWS Lambda para Google Cloud Platform y fue introducido en 2016. Admite funciones escritas en JavaScript (Node.js), Python y Go.

El servicio Azure Functions de Microsoft es un competidor directo de AWS Lambda. Además, Azure Service Fabric ofrece la capacidad de dividir las aplicaciones de Azure en microservicios, que se pueden invocar y mantener por separado de la infraestructura subyacente. Esto funciona como una combinación abstracta de contenedores estilo Docker y servicios de computación sin servidor como AWS Lambda.

También existe una alternativa de código abierto a Lambda: Apache OpenWhisk. OpenWhisk se describe como una plataforma que puede implementarse en cualquier lugar, acepta código en varios lenguajes populares, es escalable y fácil de integrar con otros servicios gracias a su capacidad para agrupar funciones.

¿Cómo puedo obtener AWS Lambda?

Cualquier persona con una cuenta de Amazon puede registrarse en AWS, lo que incluye el acceso a AWS Lambda. En la capa gratuita de AWS, recibes una asignación mensual de 1 millón de solicitudes gratuitas y hasta 3.2 millones de segundos de tiempo de cómputo por mes. A diferencia de otros servicios en la capa gratuita de AWS, el acceso a AWS Lambda no expira después de un año. El precio de Lambda se determina según la cantidad de RAM dedicada a cada solicitud, con facturación en unidades de 1 ms.

Debería su organización migrar a Google Apps desde Microsoft Exchange

Para las startups, el programa Activate ofrece créditos de AWS para nuevos negocios aprobados en dos niveles diferentes. El paquete Founders ofrece $1,000 en crédito promocional de AWS durante dos años y $350 en créditos de soporte para desarrolladores de AWS, mientras que el paquete Portfolio proporciona hasta $100,000 de crédito promocional para AWS, hasta $10,000 USD en créditos de soporte empresarial de AWS, 80 créditos para Qwiklabs y "acceso a ofertas exclusivas solo para miembros".

AWS Activate requiere una solicitud y no hay garantía de aprobación. Para las empresas emergentes interesadas en Lambda u otros servicios de AWS, Activate definitivamente vale la pena el tiempo que se tarda en completar la solicitud, que, según Amazon, solo lleva unos minutos.

En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Nube, allí encontraras muchos artículos similares a AWS Lambda: El futuro de la computación sin servidores , tenemos lo ultimo en tecnología 2023.

Artículos Relacionados

Subir

Utilizamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.