[API 게 이 트 웨 이 Kong 시리즈 10] - 속도 제한

3384 단어 부하 균형nginxlua
1. 머리말
앞에서 우 리 는 Kong 의 일부 내용 을 소 개 했 습 니 다. Key - auth, basic 등 플러그 인 을 포함 합 니 다. 알 고 싶 은 것 은 본 장 에서 플러그 인 여행 을 계속 하고 Limit 스 트림 플러그 인 사용 을 제한 하 십시오.
2、Rate Limiting
스 트림 제한 플러그 인 은 Service, Route, Consumer 에서 각각 열 수 있 습 니 다. 다음은 저희 가 소개 하 겠 습 니 다.
2.1 서비스 상 시작
$ curl -X POST http://kong:8001/services/{service}/plugins \
    --data "name=rate-limiting"
    --data "config.second=5" \
    --data "config.hour=10000" 

2.2 루트 오픈
$ curl -X POST http://kong:8001/routes/{route}/plugins \
    --data "name=rate-limiting"
    --data "config.second=5" \
    --data "config.hour=10000" 

2.3 소비자 에 게 오픈
$ curl -X POST http://kong:8001/consumers/{consumer}/plugins \
    --data "name=rate-limiting-advanced" \
    --data "config.second=5" \
    --data "config.hour=10000"

3 매개 변수 목록
매개 변수
묘사 하 다.
name
이 경우 사용 할 플러그 인의 이름 rate - limiting - advanced
service_id
이 플러그 인 은 위치 한 서비스의 ID 를 지정 합 니 다.
route_id
이 플러그 인 은 경로 의 ID 를 지정 합 니 다.
enabled 기본 값: true
이 플러그 인 을 사용 할 지 여부 입 니 다.
consumer_id
이 플러그 인 은 Consumer 의 id 를 찾 습 니 다.
config.limit
창 마다 하나 이상 의 요청 을 적용 합 니 다.
config.window_size
창 크기 를 다시 적용 합 니 다 (초 단위 로 정의)
config. identifier 기본 값: consumer
속도 제한 키 를 어떻게 정의 합 니까?ip, credential, consumer, service 또는 header 를 사용 할 수 있 습 니 다.
config.header_이름 선택 가능
config.dictionary_name 기본 값: kongrate_limiting_counters
공유 사전, 그 중 계수 기 는 다음 동기 주기 로 저 장 됩 니 다.
config.sync_rate
카운터 데 이 터 를 중앙 데이터 에 저장 하 는 주파수 로 동기 화 합 니 다.값 이 0 이면 동기 화 행 위 를 초래 할 수 있 습 니 다.값 - 1 동기 화 행 위 를 완전히 무시 하고 노드 메모리 에 만 계수 기 를 저장 합 니 다.0 이상 의 값 은 많은 초 안에 동기 화 카운터 가 될 것 이다.
config. namespace 에서 선택 할 기본 값: 무 작위 문자열
이 플러그 인 인 인 스 턴 스 의 속도 제한 라 이브 러 리 이름 공간 입 니 다.계수기 데이터 와 동기 화 설정 을 네 임 스페이스 에서 공유 합 니 다.
config. strategy 기본 값: cluster
사용 할 동기 화 정책;cluster 및 redis 지원
config. redis. host 선택 가능
redis 가 정책 을 정의 할 때 Redis 연결 에 사용 할 호스트
config. redis. port 선택 가능
redis 가 정책 을 정의 할 때 Redis 연결 에 사용 할 포트
config. redis. timeout 에서 선택 할 기본 값: 2000
redis 가 정책 을 정의 할 때 Redis 연결 에 사용 할 연결 시간 초과 (밀리초 단위)
config. redis. password 선택 가능
redis 가 정책 을 정의 할 때 Redis 연결 에 사용 할 암호 입 니 다.정의 되 지 않 으 면 Redis 에 AUTH 명령 을 보 내지 않 습 니 다.
config. redis. database 에서 선택 할 기본 값: 0
redis 가 정책 을 정의 할 때 Redis 연결 에 사용 할 데이터베이스
config.redis.sentinel_마스터 선택 가능
redis 가 정책 을 정의 할 때 Sentinel master 는 Redis 연결 에 사 용 됩 니 다.이 값 을 정의 하 는 것 은 Redis Sentinel 을 사용 하 는 것 을 의미 합 니 다.
config.redis.sentinel_역할 선택 가능
redis 가 정책 을 정의 할 때 Redis 연결 에 사용 되 는 Sentinel 역할 입 니 다.이 값 을 정의 하 는 것 은 Redis Sentinel 을 사용 하 는 것 을 의미 합 니 다.
config.redis.sentinel_주소 선택 가능
redis 가 정책 을 정의 할 때 Sentinel 주 소 는 Redis 연결 에 사 용 됩 니 다.이 값 을 정의 하 는 것 은 Redis Sentinel 을 사용 하 는 것 을 의미 합 니 다.
config.redis.cluster_주소 선택 가능
redis 가 정책 을 정의 할 때 Redis 연결 에 사용 할 클 러 스 터 주소 입 니 다.이 값 을 정의 하 는 것 은 Redis 군집 을 사용 하 는 것 을 의미 합 니 다.
config.window_type 기본 값: sliding
이것 은 시간 창 을 sliding 또는 fixed 로 설정 합 니 다.
메모: cluster 정책 을 사용 하면 Redis 설정 을 무시 합 니 다.Cluster 와 postgres 를 kong 클 러 스 터 데이터 로 저장 할 때 PostgresSQL 9.5 + 가 필요 합 니 다.
Kong 게 이 트 웨 이에 대해 더 알 고 싶 은 것 은 이동 하 십시오 > > > > 기업 급 API 게 이 트 웨 이 Kong

좋은 웹페이지 즐겨찾기