Come possiamo limitare dinamicamente la velocità di upload / download di nginx per utente?


8

È possibile limitare la velocità utilizzando il limite di velocità in una posizione specifica.

Tuttavia, come possiamo farlo in modo dinamico?

Supponiamo che tu abbia pagato rispetto agli utenti non pagati e desideri offrire una larghezza di banda maggiore agli utenti pagati.

Dovremmo controllare dinamicamente il database e consentire una certa velocità per questo particolare gruppo di utenti.

Hai in mente qualche modulo nginx?

Risposte:


4

Sì, puoi valutare il limite su una posizione specifica.

location /something/ { 
    set $limit_rate  4k; 
}

Puoi anche circondare il limite_rate con istruzioni come se anche per controllare dinamicamente i tassi. Vedi questo link per ulteriori dettagli sulla percentuale limite: http://wiki.nginx.org/NginxHttpCoreModule#limit_rate

C'è un altro modulo che dovresti tenere presente: http://wiki.nginx.org/NginxHttpLimitZoneModule

Tale modulo consente di impostare i limiti del conteggio delle connessioni. Quindi, anche se imposti un limite basso, se riescono a fare solo 10 connessioni, il tuo limite è piuttosto insignificante.

Suggerisco che gli utenti privati ​​e pubblici ottengano collegamenti diversi in modo che nginx possa facilmente distinguere tra i tipi di utenti e verificare la sicurezza nel livello dell'applicazione.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.