-
每個 IP 每分鐘僅能接受 60 個 requests
-
在首頁顯示目前的 request 量,超過限制的話則顯示 “Error”,例如在一分鐘內第 30 個 request 則顯示 30,第 61 個 request 則顯示 Error
- Node.js ^8.0
- Redis ^4.0
> mkdir ~/dev && cd ~/dev
> git clone git@github.com:a-ken/ip-rate-limit.git
> cd ip-rate-limit && npm i
> cp .example.env .env
NODE_ENV=development
PORT=5000
PROXY=false
REDIS_HOST=<ip or hostname>
REDIS_PORT=6379
> npm run build
> npm start
- docker
- docker compose
> cp .example.env .env
使用以下 .env 內容,不需調整
NODE_ENV=development
PORT=5000
PROXY=false
REDIS_HOST=redis
REDIS_PORT=6379
> docker-compose up
> cp .example.env.test .env.test
CLIENT_IP=<your client ip>
SERVER=<remote api server ip or hostname>
> npm run simple:test