¿Qué es Google Cloud Functions y para qué sirve?

Google Cloud Functions es uno de los productos que podemos encontrar dentro de Google Cloud Platform. Con él puedes programar funciones, sin necesidad de servidores dentro de la propia infraestructura de Google, simples vinculadas a eventos emitidos desde tu infraestructura y servicios en la nube. La función se activará cuando ocurra un evento que esté bajo observación.

No es necesario realizar tareas de aprovisionamiento, actualización o gestión de servidores ya que todo se realiza en la nube. La experiencia de desarrollo es muy fácil e intuitiva, solo debes escribir el código y Google Clouds se ocupará de la infraestructura operativa. Cabe destacar también que tiene funciones integradas de monitorización, almacenamiento de registros y depuración.

A la hora de escribir las funciones hay que tener en cuenta que podrás hacerlo mediante los entornos de ejecución de JavaScript, Python 3, Go o Java en Google Cloud Platform. Además, algo que simplifica la portabilidad y las pruebas locales, es que puedes tomar la función y ejecutarla en cualquier entorno estándar de Node.js (Node.js 10 o 12), Python 3 (Python 3.7 o 3.8), Go (Go 1.11 o 1.13) o Java (Java 11).

Principales características

Son varias las características de este producto, pero vamos a conocer las tres principales.

La experiencia de desarrollo: Como comentamos con anterioridad, es una experiencia fácil e intuitiva. Aparte de que Google se ocupa de la infraestructura operativa, podrás escribir y ejecutar pequeños fragmentos de código que respondan a eventos y de esta manera conseguirás agilizar las tareas de desarrollo. También, podrás conectarte a través de activadores a Google Cloud o a servicios de terceros en la nube que te permitirán resolver problemas de orquestación complejos.

Pagas por lo que usas: Otra de sus características es que pagarás solo por lo que utilices, es decir, el tiempo que tu código se esté ejecutando. Cuando la función esté inactiva no tendrás que pagar nada, se te cobrará el tiempo de ejecución que se redondeará a la centésima de milisegundo más cercana. Hay que tener en cuenta que este producto adapta automáticamente su velocidad en función de los eventos.

Se escala automáticamente: Sin necesidad de preocuparte por la infraestructura los servicios que ofreces a tus usuarios se podrán escalar desde cero hasta donde sea necesario. Cloud Functions se encargará de gestionar y escalar de manera automática la infraestructura subyacente en función de la carga de trabajo.

Son muchas las alternativas que se pueden desarrollar con Cloud Functions por ejemplo, Backends de aplicaciones sin servidor, aplicaciones inteligentes, procesamiento de datos en tiempo real. Este programa se integra fácilmente con Apis y servicios de terceros por lo que puede ofrecer muchísimas posibilidades.

Google Cloud Functions (2 generación)

Una buena noticia es que, recientemente, Google anunció la versión preliminar de la segunda generación de Cloud Functions que llega para mejorar la anterior. En concreto, introduce más controles sobre el tiempo de ejecución de las funciones, proporciona un mejor rendimiento y escalabilidad y admite disparadores de más de 90 fuentes de eventos.

Uno de los principales cambios de esta nueva versión es el tiempo de procesamiento más largo para las funciones HTTP, llegando hasta 60 minutos, que admite casos de uso que involucran grandes flujos de datos, como canalizaciones de procesamiento de datos o aprendizaje automático.

Entre las funciones que incluye la segunda generación se encuentra una cobertura de eventos más amplia y compatible con CloudEvents. Incluye un soporte nativo para Eventarc que cuenta con más de 90 fuentes de eventos, de fuentes directas y registros de Cloyd Audit. Además, la interfaz de usuario y la experiencia de desarrollador están mejorada con un panel personalizable y actualizaciones de accesibilidad.

Finalmente, las funciones de esta segunda generación se crean mediante paquetes de compilación de código abierto y marcos de funciones que ofrecen la portabilidad para ejecutar sus funciones en cualquier lugar.

¿Te ha gustado?¡ Compártelo!
Últimas entradas