Nginx-Zufallsantwortfunktion
我想大声告诉你
我想大声告诉你 2017-05-16 17:25:34
0
2
484

Als der Client mit dem Server interagierte, kam es zu einem Timing-Designfehler, der dazu führte, dass der Server innerhalb von 10 Minuten mehr als 300.000 Anfragen empfing. Der Druck auf das PHP-Backend stieg sofort an und führte zum Zusammenbruch.

Da in der aktuellen Lösung wiederholte Anfragen innerhalb kurzer Zeit denselben Inhalt erhalten, werden Anfragen mit speziellen Parametern direkt auf der Nginx-Ebene abgelegt und es werden keine Ergebnisse direkt zurückgegeben.

Der Code lautet wie folgt

shell    if ( $query_string ~ "api=(getpush|remove)")
    {
        return 200 '{"resultStatus":1,"allCount":0,"data":[]}';
        break;
    }

Diese Lösung weist Mängel auf, z. B. dass sie nur 90 % der Anfragen verbietet oder nur innerhalb einer bestimmten Zeit wirksam wird. Ich frage mich, ob irgendwelche Studenten ähnliche Anti-Angriffs-Lösungen haben?

我想大声告诉你
我想大声告诉你

Antworte allen(2)
我想大声告诉你

可以考虑用一个upstream,设定一个权重,把90%的请求转移到一个dummy的接口上

伊谢尔伦

fine, 自己来把坑补上

nginx+lua=openresty

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage