OCI Functions - Konzepte
Erfahren Sie mehr über die Schlüsselkonzepte, die Sie vor der Verwendung von OCI Functions verstehen müssen.
Funktionsentwickler
Benutzer von Oracle Cloud Infrastructure, die OCI Functions verwenden, um Funktionen zu erstellen und bereitzustellen, werden als "Functions-Entwickler" bezeichnet. Damit sie OCI Functions verwenden können, müssen Funktionsentwickler über Oracle Cloud Infrastructure-Benutzeraccounts verfügen. Ihre Benutzeraccounts müssen zu Gruppen gehören, denen entsprechende Policys Zugriff auf funktionsbezogene Ressourcen erteilen.
Siehe Gruppen und Benutzer für OCI Functions erstellen, wenn diese noch nicht vorhanden sind.
Anwendungen
In OCI Functions ist eine Anwendung:
- eine logische Gruppierung von Funktionen.
- eine Möglichkeit, Ressourcen für alle Funktionen in der Anwendung zuzuweisen und zu konfigurieren
- ein gemeinsamer Kontext zum Speichern von Konfigurationsvariablen, die für alle Funktionen in der Anwendung verfügbar sind.
- eine Möglichkeit zur Gewährleistung der Laufzeitisolierung der Funktion
Wenn Sie eine Anwendung in OCI Functions definieren, geben Sie die Subnetze an, in denen die Funktionen in der Anwendung ausgeführt werden sollen. Sie geben auch an, ob das Logging für die Funktionen in der Anwendung aktiviert werden soll.
Wenn Funktionen aus verschiedenen Anwendungen gleichzeitig aufgerufen werden, stellt OCI Functions sicher, dass diese Funktionsausführungen voneinander isoliert sind.
Best Practice ist es, mehrere Funktionen in einer einzigen Anwendung für eine bessere Effizienz und Performance zu gruppieren.
OCI Functions zeigt Anwendungen und ihre Funktionen in der Konsole an.
Siehe Anwendungen erstellen.
Funktionen
In OCI Functions sind folgende Funktionen verfügbar:
- kleine, leistungsstarke Codeblöcke, die in der Regel eine einfache Aufgabe ausführen.
- in Anwendungen gruppiert.
- als Docker-Images in einer angegebenen Docker-Registry gespeichert.
- die Antwort, die auf einen CLI-Befehl oder eine signierte HTTP-Anforderung angezeigt wird.
Wenn Sie eine Funktion mit der Fn-Projekt-CLI in OCI Functions bereitstellen, wird die Funktion als Docker-Image erstellt und in eine angegebene Docker-Registry per Push übertragen.
Eine Definition der Funktion wird als Metadaten auf dem OCI Functions-Server gespeichert. Die Definition beschreibt, wie die Funktion ausgeführt werden soll. Sie enthält:
- das Docker-Image, das abgerufen werden soll, wenn die Funktion per Pull abgerufen wird.
- die maximale Zeitdauer, über die die Funktion ausgeführt werden darf.
- den maximalen Arbeitsspeicher, den die Funktion belegen darf.
OCI Functions zeigt Funktionen und die Anwendungen, in denen sie gruppiert sind, in der Konsole an.
Siehe Helloworld-Funktion erstellen, bereitstellen und aufrufen.
Aufrufe
In OCI Functions wird der Code einer Funktion ausgeführt, wenn die Funktion aufgerufen wird. Sie können eine in OCI Functions bereitgestellte Funktion über die folgenden Komponenten aufrufen:
- Fn-Projekt-CLI.
- Oracle Cloud Infrastructure-SDKs.
- Signierte HTTP-Anforderungen an den Aufrufendpunkt der Funktion. Jede Funktion verfügt über einen Aufrufendpunkt.
- Andere Oracle Cloud-Services (z.B. durch ein Ereignis im Events-Service ausgelöst) oder externe Services.
Wenn eine Funktion zum ersten Mal aufgerufen wird, ruft OCI Functions das Docker-Image der Funktion aus der angegebenen Docker Registry ab, führt es als Docker-Container aus und führt die Funktion aus. Wenn weitere Anforderungen an dieselbe Funktion vorhanden sind, leitet OCI Functions diese Anforderungen an denselben Container weiter. Nach einer gewissen inaktiven Zeit wird der Docker-Container entfernt.
OCI Functions zeigt Informationen zu Funktionsaufrufen in Metrikdiagrammen an.
Siehe Funktionen aufrufen.
Trigger
Ein Trigger ist das Ergebnis einer Aktion an einer anderen Stelle im System, das eine Anforderung zum Aufruf einer Funktion in OCI Functions sendet. Beispiel: Ein Ereignis im Events-Service kann dazu führen, dass ein Trigger eine Anforderung an OCI Functions sendet, eine Funktion aufzurufen. Alternativ kann ein Trigger reguläre Anforderungen senden, eine Funktion nach einem definierten, zeitbasierten Ausführungsplan aufzurufen.
Eine Funktion kann mit keinen Triggern oder mit einem oder mehreren Triggern verknüpft werden.