Conseil du service des fonctions pour OCI

Découvrez les concepts clés que vous devez comprendre avant d'utiliser le service des fonctions pour OCI.

Développeurs de fonctions

Les utilisateurs d'Oracle Cloud Infrastructure qui utilisent le service des fonctions pour OCI pour créer et déployer des fonctions sont appelés "développeurs de fonctions". Pour utiliser le service des fonctions pour OCI, les développeurs de fonctions doivent disposer de comptes d'utilisateur Oracle Cloud Infrastructure. Ces comptes d'utilisateur doivent appartenir à des groupes auxquels les politiques appropriées accordent l'accès aux ressources liées aux fonctions.

Voir Création de groupes et d'utilisateurs pour OCI Functions, s'ils n'existent pas déjà.

Applications

Dans le service des fonctions OCI, une application est :

  • Un regroupement logique de fonctions
  • Un moyen permettant d'affecter et de configurer des ressources pour toutes les fonctions de l'application
  • Un contexte commun pour stocker des variables de configuration disponibles pour toutes les fonctions de l'application
  • Un moyen permettant d'assurer l'isolement de l'exécution des fonctions

Lorsque vous définissez une application dans le service des fonctions pour OCI, vous spécifiez les sous-réseaux dans lesquels exécuter les fonctions dans l'application. Vous précisez également s'il faut activer la journalisation pour les fonctions de l'application.

Lorsque des fonctions de différentes applications sont appelées simultanément, le service des fonctions pour OCI s'assure que ces exécutions de fonctions sont isolées les unes des autres.

Pour une efficacité et une performance supérieures, la meilleure pratique consiste à regrouper plusieurs fonctions dans une seule application.

Le service des fonctions pour OCI affiche les applications et leurs fonctions dans la console.

Voir Création d'applications.

Fonctions

Dans le service des fonctions pour OCI, les fonctions sont les suivantes :

  • Des blocs de code petits mais puissants qui effectuent généralement une action simple
  • Regroupées en applications
  • Stockées en tant qu'images Docker dans un registre Docker spécifique
  • Appelées en réponse à une commande CLI ou à une demande HTTP signée

Lorsque vous déployez une fonction dans le service des fonctions pour OCI à l'aide de l'interface de ligne de commande Fn Project, la fonction est créée en tant qu'image Docker et placée dans un registre Docker spécifié.

Une définition de la fonction est stockée comme métadonnées sur le serveur du service des fonctions pour OCI. La définition décrit comment la fonction doit être exécutée et inclut les éléments suivants :

  • L'image Docker à extraire lorsque la fonction est appelée
  • La durée maximale d'exécution de la fonction
  • La mémoire maximale que la fonction peut consommer

Le service des fonctions pour OCI affiche les fonctions et les applications dans lesquelles elles sont regroupées, dans la console.

Voir Création, déploiement et appel d'une fonction Helloworld.

Appels

Dans le service des fonctions pour OCI, le code d'une fonction est exécuté lorsque la fonction est appelée. Vous pouvez appeler une fonction que vous avez déployée dans le service des fonctions pour OCI depuis :

  • L'interface de ligne de commande Fn Project.
  • Les trousses SDK Oracle Cloud Infrastructure.
  • Des demandes HTTP signées au point d'extrémité d'appel de la fonction. Chaque fonction possède un point d'extrémité d'appel.
  • D'autres services Oracle Cloud (par exemple, déclenchés par un événement dans le service Événements) ou à partir de services externes.

Lorsqu'une fonction est appelée pour la première fois, le service des fonctions pour OCI extrait l'image Docker de la fonction à partir du registre Docker spécifié, l'exécute en tant que conteneur Docker et exécute la fonction. S'il existe des demandes suivantes pour la même fonction, le service des fonctions pour OCI dirige ces demandes vers le même conteneur. Après une certaine période d'inactivité, le conteneur Docker est supprimé.

Le service des fonctions pour OCI présente des informations sur les appels de fonction dans des graphiques de mesure.

Voir Appel de fonctions.

Déclencheurs

Un déclencheur résulte d'une action ailleurs dans le système. Il envoie une demande d'appel de fonction dans le service des fonctions pour OCI. Par exemple, un événement dans le service d'événements peut déclencher l'envoi d'une demande au service des fonctions pour OCI pour appeler une fonction. Vous pouvez également envoyer des demandes standard pour appeler une fonction selon un programme temporel défini.

Une fonction peut n'être associée à aucun déclencheur, ou peut être associée à un ou plusieurs déclencheurs.