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.
Updating/migrating zu Envoy 1.17
Wichtig
Hinweis zum Ende des Supports: Am 30. September 2026 AWS wird der Support für eingestellt. AWS App Mesh Nach dem 30. September 2026 werden Sie nicht mehr auf die AWS App Mesh Konsole oder die Ressourcen zugreifen können. AWS App Mesh Weitere Informationen finden Sie in diesem Blogbeitrag Migration von AWS App Mesh zu Amazon ECS Service Connect.
Geheimer Ermittlungsdienst mit SPIRE
Wenn Sie SPIRE (SPIFFE Runtime Environment) mit App Mesh verwenden, um Vertrauenszertifikate an Ihre Dienste zu verteilen, stellen Sie sicher, dass Sie mindestens eine Version 0.12.0 des SPIRE-Agenten verwenden 1.16
Änderungen an regulären Ausdrücken
Ausgehend von Envoy konfiguriert App Mesh Envoy so1.17, dass es standardmäßig die RE2-Engine für
Positiver und negativer Ausblick
Positiv — Ein positiver Ausblick ist ein Ausdruck in Klammern, der beginnt mit: ?=
(?=example)
Diese sind am nützlichsten beim Ersetzen von Zeichenketten, da sie es ermöglichen, eine Zeichenfolge abzugleichen, ohne dass die Zeichen als Teil der Übereinstimmung verwendet werden. Da App Mesh das Ersetzen von Regex-Zeichenfolgen nicht unterstützt, empfehlen wir, diese durch reguläre Treffer zu ersetzen.
(example)
Negativ — Ein negativer Look-Ahead ist ein Ausdruck in Klammern, der mit beginnt. ?!
ex(?!amp)le
Die Ausdrücke in Klammern werden verwendet, um zu bestätigen, dass ein Teil des Ausdrucks nicht mit einer bestimmten Eingabe übereinstimmt. In den meisten Fällen können Sie diese durch einen Null-Quantifizierer ersetzen.
ex(amp){0}le
Wenn der Ausdruck selbst eine Zeichenklasse ist, können Sie die gesamte Klasse negieren und sie als optional kennzeichnen. ?
prefix(?![0-9])suffix => prefix[^0-9]?suffix
Abhängig von Ihrem Anwendungsfall können Sie möglicherweise auch Ihre Routen ändern, um dies zu bewältigen.
{ "routeSpec": { "priority": 0, "httpRoute": { "match": { "headers": [ { "name": "x-my-example-header", "match": { "regex": "^prefix(?!suffix)" } } ] } } } } { "routeSpec": { "priority": 1, "httpRoute": { "match": { "headers": [ { "name": "x-my-example-header", "match": { "regex": "^prefix" } } ] } } } }
Beim ersten Routen-Match wird nach einem Header gesucht, der mit „Präfix“ beginnt, aber nicht mit „Suffix“ folgt. Die zweite Route entspricht allen anderen Headern, die mit „Präfix“ beginnen, einschließlich derer, die mit „Suffix“ enden. Stattdessen können diese Werte auch rückgängig gemacht werden, um den negativen Look-Ahead zu entfernen.
{ "routeSpec": { "priority": 0, "httpRoute": { "match": { "headers": [ { "name": "x-my-example-header", "match": { "regex": "^prefix.*?suffix" } } ] } } } } { "routeSpec": { "priority": 1, "httpRoute": { "match": { "headers": [ { "name": "x-my-example-header", "match": { "regex": "^prefix" } } ] } } } }
In diesem Beispiel werden die Routen umgekehrt, um Headern, die mit „Suffix“ enden, eine höhere Priorität einzuräumen. Alle anderen Header, die mit „Präfix“ beginnen, werden in der Route mit niedrigerer Priorität abgeglichen.
Rückseitige Verweise
Ein Rückverweis ist eine Möglichkeit, kürzere Ausdrücke zu schreiben, indem eine vorherige Gruppe in Klammern wiederholt wird. Sie haben dieses Formular.
(group1)(group2)\1
Ein umgekehrter Schrägstrich \ gefolgt von einer Zahl dient als Platzhalter für die n-te Gruppe in Klammern im Ausdruck. In diesem Beispiel \1 wird als alternative Methode verwendet, um ein zweites Mal zu schreiben. (group1)
(group1)(group2)(group1)
Diese können entfernt werden, indem einfach die Rückreferenz durch die Gruppe ersetzt wird, auf die verwiesen wird, wie im Beispiel.