Conceptos de OCI Functions

Descubra los conceptos clave que debe comprender antes de utilizar OCI Functions.

Desarrolladores de funciones

Los usuarios de Oracle Cloud Infrastructure que utilizan OCI Functions para crear y desplegar funciones se denominan "desarrolladores de funciones". Para utilizar OCI Functions, los desarrolladores de funciones deben tener cuentas de usuario de Oracle Cloud Infrastructure. Sus cuentas de usuario deben pertenecer a grupos a los que las políticas correspondientes otorgan acceso a recursos relacionados con la función.

Consulte Creación de grupos y usuarios para su uso con OCI Functions, si aún no existen.

Aplicaciones

En OCI Functions, una aplicación es:

  • Una agrupación lógica de funciones.
  • una forma de asignar y configurar recursos para todas las funciones de la aplicación
  • Un contexto común para almacenar variables de configuración disponibles para todas las funciones de la aplicación
  • una forma de garantizar el aislamiento del tiempo de ejecución de la función

Al definir una aplicación en OCI Functions, debe especificar las subredes en las que se ejecutarán las funciones de la aplicación. También puede especificar si desea activar el registro de las funciones de la aplicación.

Cuando se invocan funciones de diferentes aplicaciones simultáneamente, OCI Functions garantiza que estas ejecuciones de funciones se aislan entre sí.

La práctica recomendada es agrupar varias funciones en una sola aplicación para mejorar la eficacia y el rendimiento.

OCI Functions muestra las aplicaciones y sus funciones en la consola.

Consulte Creación de aplicaciones.

Funciones

En OCI Functions, las funciones son:

  • Son bloques de código pequeños pero potentes que normalmente hacen una acción sencilla.
  • Están agrupadas en aplicaciones.
  • creado a partir de una imagen de contenedor o, para los tiempos de ejecución soportados, un archivo que contiene el código de función y las dependencias
  • Se llaman en respuesta a un comando de la CLI o una solicitud HTTP firmada.

Cuando se crea una función, se especifica cómo proporcionar el código de función. Para las funciones basadas en imágenes, se proporciona una imagen de contenedor. Para las funciones de solo código, proporcione un archivo que contenga el código de función y las dependencias, y seleccione un tiempo de ejecución gestionado.

Se almacena una definición de la función como metadatos en el servidor de OCI Functions. La definición describe cómo se ejecuta la función e incluye:

  • el origen utilizado para ejecutar la función, como la imagen del contenedor o los detalles del origen del archivo
  • la configuración de tiempo de ejecución para una función de solo código
  • El tiempo máximo durante el que se puede ejecutar la función.
  • La cantidad máxima de memoria que la función puede consumir.

OCI Functions muestra las funciones y las aplicaciones en las que están agrupadas en la consola.

Para obtener más información sobre la creación de funciones a partir de imágenes, consulte Creación, Despliegue y Llamada a una Función Helloworld Basada en Imágenes. Para obtener más información sobre la creación de funciones desde archivos, consulte Creating Functions from Archives (Code-only Functions).

Llamadas

En OCI Functions, se ejecuta el código de una función cuando se llama a la función. Puede llamar a una función que haya desplegado en OCI Functions desde:

  • La CLI de Fn Project.
  • Los SDK de Oracle Cloud Infrastructure.
  • Solicitudes HTTP firmadas al punto final de llamada de la función. Cada función tiene un punto final de llamada.
  • Otros servicios de Oracle Cloud (por ejemplo, disparados por un evento en el servicio Events) o desde servicios externos.

Cuando se llama a una función por primera vez, OCI Functions prepara el entorno de ejecución para la función y ejecuta el código de función. Para funciones basadas en imágenes, OCI Functions extrae la imagen de contenedor de la función del registro de contenedores especificado. Para funciones de solo código, OCI Functions utiliza el archivo de funciones y el tiempo de ejecución gestionado para preparar el entorno de ejecución. Si hay solicitudes posteriores a la misma función, OCI Functions puede dirigir esas solicitudes al mismo entorno de ejecución. Después de un período de inactividad, se elimina el entorno de ejecución.

OCI Functions muestra información sobre las llamadas a la función en gráficos de métricas.

Consulte Llamadas a funciones.

Disparadores

Un disparador es el resultado de una acción en cualquier lugar del sistema que envía una solicitud para llamar a una función en OCI Functions. Por ejemplo, un evento en el servicio Events puede causar que un disparador envíe una solicitud a OCI Functions para llamar a una función. Como alternativa, un disparador puede enviar solicitudes periódicas para llamar a una función según una planificación definida basada en el tiempo.

Puede que una función no esté asociada a ningún disparador o se pueda asociar a uno o varios disparadores.