Rumah > pangkalan data > Redis > teks badan

Bagaimana untuk membina modul kawalan frekuensi capaian dengan Redis

王林
Lepaskan: 2023-05-26 16:41:35
ke hadapan
1547 orang telah melayarinya

Gambaran keseluruhan prinsip:

Program ini akan menentukan kepingan masa Semakin kecil kepingan masa, semakin tinggi ketepatan kawalan. Kawalan akses melibatkan beberapa keping masa.

Apabila program memerlukan penambahan rekod akses pada masa tertentu, ia akan terlebih dahulu mengira hirisan masa yang akan digunakan berdasarkan masa semasa dan menambah 1 pada pembilang hirisan masa ini.

Apabila program menentukan berapa kali ia telah diakses dalam satu tempoh masa, ia akan terlebih dahulu mengira berapa banyak hirisan masa dalam tempoh ini, kemudian keluarkan semua kepingan masa ini, tambahkan pembilang dan kembalikan.

Pengenalan prinsip ada di sini, dan kod sumber berkaitan program ada di sini (nodejs)

Cara menggunakan Redis untuk membina modul kawalan frekuensi akses

Contoh penggunaan (nodejs ):

varredback=require('redback').createClient(),

ratelimit=redback.createRateLimit('requests');

//IncrementthecountforthespecifiedIP

ratelimit.add( '127.0.0.1');

//Countthenumberofrequestsinthelast20saat

ratelimit.count('127.0.0.1',20,function(err,requests){

jika(permintaan> ;30){

 //Throttletheuserin someway..

 }

 });

Atas ialah kandungan terperinci Bagaimana untuk membina modul kawalan frekuensi capaian dengan Redis. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan