ICM / cloud / ¿Qué es el Serverless Computing?

¿Qué es el Serverless Computing?

17 enero 2021 | Aleix Abrie

¿Conocías el término Serverless Computing o arquitectura Serverless? Resumidamente, se trata de un servicio totalmente gestionado por el proveedor de la nube. En este artículo, te explicamos sus principales beneficios y sus principales desventajas.

 Definición

Serverless computing es un módulo o servicio de computación en la nube totalmente autogestionado en el que el proveedor de la nube ejecuta el servidor y lo administra asignando y adaptando los recursos de éste según las necesidades del usuario o de la empresa.

Las estructuras sin servidor permiten a sus usuarios concentrarse en la actividad de su empresa, sin tener que preocuparse por ningún servidor. Es decir, no hay servidores a mantener, ni sistemas operativos que cuidar, ni software que administrar, ni hardware que actualizar. Esto simplemente significa que tú puedes dedicarte 100% a la actividad de tu negocio, sin preocuparte por nada más.

Contrariamente a lo que su nombre parece indicar, los Serverless Computing sí guardan la información en servidores físicos. Su nombre hace referencia a la facilidad de los usuarios de no tener que estar pendientes de la administración de dicho servidor.

Beneficios del Serverless Computing

Muchas empresas ya están utilizando Serverless Computing en su día a día. Entre la cantidad de beneficios de esta arquitectura sin servidor, repasaremos los beneficios principales:

  •  Coste: La ventaja principal de utilizar Serverless Computing es el hecho de que ésta proporciona servicios solo por lo que realmente utilizas. Esto significa, que solamente pagarás por lo que usas, ni más ni menos.
  • Mantenimiento: Como ya hemos comentado anteriormente, estos sistemas no presentan servidores o sistemas operativos que mantener. No tenemos que administrar ningún servidor, ni siquiera es necesario instalar ningún sistema operativo o software de soporte.
  • Escalamiento fácil y eficiente: En los Serverless Computing las aplicaciones se pueden escalar automáticamente o, como máximo, con unos pocos clics para elegir la capacidad deseada.
  • Alta disponibilidad: Las aplicaciones tienen disponibilidad incorporada. Por lo tanto, no necesitas tener una infraestructura especializada para que las aplicaciones estén altamente disponibles. Todo esto está disponible para tu empresa por defecto.
  • Autonomía para la empresa: El Serverless Computing brinda a las organizaciones la libertad de concentrarse en sus ofertas comerciales principales y olvidarse de los problemas de servidores de bajo nivel. Por lo tanto, los trabajadores y la alta dirección pueden utilizar el dinero y la oportunidad para desarrollar ofertas competitivas que pueden ayudar a la organización a superar los competidores.
cloud computing

Inconvenientes del Serverless Computing

Cómo hemos visto, el Serverless computing va un paso más allá de lo que se conoce como arquitectura de microservicios, que no es más que “una aproximación para el desarrollo de software que consiste en construir una aplicación como un conjunto de pequeños servicios, los cuáles se ejecutan en su propio proceso y se comunican con mecanismos ligeros”. La pega de esta arquitectura de microservicios es que incrementa el trabajo de gestión y mantenimiento de la infraestructura, algo que se soluciona gracias a la computación “sin servidor”.

A continuación, comentaremos los principales inconvenientes o desventajas de la arquitectura Serverless Computing:

  • Vendor lock-in, es complicado migrar de un proveedor a otro.
  • Existe una limitación del tiempo máximo de una función, y también una limitación del tamaño máximo de la función.
  • Es posible que la ejecución sufra latencias si es su primera ejecución o si lleva tiempo sin ejecutarse.
  • Se trata de un entorno cerrado y gestionado por terceros, así que no es posible realizar personalizaciones ni optimizaciones.

Conclusión

Cómo hemos visto, el Serverless computing va un paso más allá de lo que se conoce como arquitectura de microservicios, que no es más que “una aproximación para el desarrollo de software que consiste en construir una aplicación como un conjunto de pequeños servicios, los cuáles se ejecutan en su propio proceso y se comunican con mecanismos ligeros”. La pega de esta arquitectura de microservicios es que incrementa el trabajo de gestión y mantenimiento de la infraestructura, algo que se soluciona gracias a la computación “sin servidor”.

A continuación, comentaremos los principales inconvenientes o desventajas de la arquitectura Serverless Computing:

  • Vendor lock-in, es complicado migrar de un proveedor a otro.
  • Existe una limitación del tiempo máximo de una función, y también una limitación del tamaño máximo de la función.
  • Es posible que la ejecución sufra latencias si es su primera ejecución o si lleva tiempo sin ejecutarse.
  • Se trata de un entorno cerrado y gestionado por terceros, así que no es posible realizar personalizaciones ni optimizaciones.

Conclusión

Cómo hemos visto, el Serverless computing va un paso más allá de lo que se conoce como arquitectura de microservicios, que no es más que “una aproximación para el desarrollo de software que consiste en construir una aplicación como un conjunto de pequeños servicios, los cuáles se ejecutan en su propio proceso y se comunican con mecanismos ligeros”. La pega de esta arquitectura de microservicios es que incrementa el trabajo de gestión y mantenimiento de la infraestructura, algo que se soluciona gracias a la computación “sin servidor”.