Heim > Artikel > Backend-Entwicklung > Ein Artikel, der ausführlich erklärt, wie man die Strombegrenzungsfunktion von GS Admin nutzt
Dieser Artikel führt Sie in die Verwendung der aktuellen Begrenzungsfunktion von GS Admin ein. GS Admin ist ein von Golang entwickeltes Backend auf Unternehmensebene. Schauen wir uns an, wie man es verwendet an alle.
Warehouse
giee: gitee.com/kevn/gsadmin/tree/master github: github.com/sonhineboy/gsadmin
Anweisungen
Wenn im täglichen Betrieb der Website die Anzahl der Parallelitäten den Schwellenwert unseres Dienstes erreicht, können wir die Verfügbarkeit des Dienstes durch Strombegrenzung sicherstellen. [Empfohlen: Golang-Tutorial]
Gemeinsame Strombegrenzungsmethoden:
1. Wenn der Kanal voll ist, verweigern Sie den Dienst oder geben Sie eine freundliche Aufforderung oder springen Sie zu einer freundlichen Seite und warten Sie.
2. Der Zähler akzeptiert nur 100 Anfragen innerhalb von 10 Sekunden. Wenn die Anzahl 100 Anfragen überschreitet, wird der Dienst abgelehnt. Wenn die Anzahl 10 Sekunden überschreitet, wird der Zähler auf Null zurückgesetzt und die Anfrage wird erneut angenommen.
3. Verwenden Sie das Frequenzlimit des HTTP-Servers, Sie müssen es nicht selbst implementieren.
4. Token-Bucket-Algorithmus: Legen Sie Token mit konstanter Geschwindigkeit in den Token-Bucket. Wenn eine Anfrage eingeht, wird das Token für nachfolgende Anfragen aus dem Token-Bucket abgerufen aus. .
5. Leaky-Bucket-Algorithmus: Anfragen gelangen zuerst in den Leaky-Bucket, und der Leaky-Bucket verarbeitet Anfragen mit einer festen Rate. Wenn die Anzahl der Anfragen die Kapazität des Leaky-Buckets überschreitet, werden die überschüssigen Anfragen in einem verarbeitet freundliche Art, die für Notfälle nicht geeignet ist.
Der Unterschied zwischen den beiden oben genannten Token-Algorithmen: Der Leaky-Bucket-Algorithmus kann die Übertragungsrate zwangsweise begrenzen, und der Token-Bucket-Algorithmus: kann die durchschnittliche Übertragungsrate begrenzen und bestimmte Notfälle zulassen.
GS Admin-Strombegrenzungsmethode
GS Admin verwendet Golang. Es gibt eine sehr einfach zu verwendende Strombegrenzungszeit/-rate unter golang.org/x/time/rate die offizielle Dokumentation. GS Admin hat die Web-Middleware gekapselt. Sie müssen nur die entsprechenden Parameter in der Konfigurationsdatei konfigurieren
rate: limit: 15 //每秒产生得令牌数量 burst: 2 //令牌得大小
Wenn der aktuelle Grenzwert überschritten wird, wird die Middleware wie folgt ausgelöst:
Das obige ist der detaillierte Inhalt vonEin Artikel, der ausführlich erklärt, wie man die Strombegrenzungsfunktion von GS Admin nutzt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!