Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Unterschiede zwischen CloudFront Functions und Lambda @Edge
CloudFront Functions und Lambda @Edge bieten beide die Möglichkeit, Code als Reaktion auf CloudFront Ereignisse auszuführen.
CloudFront Functions ist ideal für einfache Funktionen mit kurzer Laufzeit für die folgenden Anwendungsfälle:
-
Cache-Schlüssel-Normalisierung – Wandeln Sie HTTP-Anforderungseigenschaften (Header, Abfragezeichenfolgen, Cookies und sogar den URL-Pfad) um und verbessern Sie die Cache-Trefferquote mit dem optimalen Cache-Schlüssel.
-
Header-Manipulation – HTTP-Header in der Anforderung oder Antwort können eingefügt, verändert oder gelöscht werden. Beispielsweise können Sie jeder Anfrage einen
True-Client-IP-Header hinzufügen. -
URL-Weiterleitungen oder -Umschreibungen – Leiten Sie Viewer basierend auf den Informationen in der Anforderung auf andere Seiten weiter oder schreiben Sie alle Anforderungen von einem Pfad in einen anderen um.
-
Anforderungsberechtigung – Validieren Sie Hash-Autorisierungstoken wie JSON-Web-Token (JWT), indem Sie Autorisierungsheader oder andere Anforderungsmetadaten prüfen.
Informationen zu den ersten Schritten mit CloudFront Funktionen finden Sie unterPersonalisieren Sie am Rand mit CloudFront Funktionen.
Lambda@Edge eignet sich ideal für folgende Anwendungsfälle:
-
Funktionen, die mehrere Millisekunden oder mehr benötigen
-
Funktionen, die eine einstellbare CPU oder einen einstellbaren Speicher benötigen
-
Funktionen, die von Bibliotheken von Drittanbietern abhängig sind (einschließlich des AWS SDK für die Integration mit anderen AWS-Services)
-
Funktionen, die Netzwerkzugriff benötigen, um externe Services für die Verarbeitung zu nutzen
-
Funktionen, die Dateisystemzugriff oder Zugriff auf den Text von HTTP-Anforderungen erfordern
Die ersten Schritte mit Lambda@Edge finden Sie unter Anpassen am Edge mit Lambda@Edge.
Um Ihnen bei der Auswahl der Option für Ihren Anwendungsfall zu helfen, verwenden Sie die folgende Tabelle, um die Unterschiede zwischen CloudFront Functions und Lambda @Edge zu verstehen. Informationen zu den Unterschieden, die für die Hilfsmethoden zur Änderung des Ursprungs gelten, finden Sie unter Wählen Sie zwischen CloudFront Functions und Lambda @Edge.
| CloudFront Funktionen | Lambda@Edge | |
|---|---|---|
| Programmiersprachen | JavaScript (ECMAScript 5.1-konform) | Node.js und Python |
| Ereignisquellen |
|
|
|
Unterstützt Amazon CloudFront Schlüsselwertspeicher |
Ja CloudFront KeyValueStore unterstützt nur JavaScript Runtime 2.0 |
Nein |
| Skalieren | Bis zu Millionen von Anforderungen pro Sekunde | Bis zu 10.000 Anforderungen pro Sekunde pro Region |
| Dauer der Funktion | Unterhalb einer Millisekunde |
Bis zu 30 Sekunden (Zuschaueranfrage und Zuschauerantwort) Bis zu 30 Sekunden (Ursprungsanfrage und Ursprungsantwort) |
|
maximale Funktionsspeichergröße |
2 MB |
128 MB (Zuschaueranfrage und Zuschauerantwort) 10 240 MB (10 GB) (Ursprungsanforderung und Ursprungsantwort) Weitere Informationen finden Sie unter Kontingente für Lambda@Edge. |
| Maximale Größe des Funktionscodes und der enthaltenen Bibliotheken | 10 KB |
50 MB (Zuschaueranfrage und Zuschauerantwort) 50 MB (Ursprungsanfrage und Ursprungsantwort) |
| Netzwerkzugriff | Nein | Ja |
| Zugriff auf das Dateisystem | Nein | Ja |
| Zugang zum Anfragetext | Nein | Ja |
| Zugriff auf Geolokations- und Gerätedaten | Ja |
Nein (Viewer-Anforderung und Viewer-Antwort) Ja (Ursprungsanforderung und Ursprungsantwort) |
| Kann komplett darin bauen und testen CloudFront | Ja | Nein |
| Funktionsprotokollierung und Metriken | Ja | Ja |