

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 쓰기 제한 검색
<a name="Durability.SearchThrottling"></a>

최적의 성능과 데이터 내구성을 유지하기 위해 **내구성 모드에서** ElastiCache는 필요한 경우 검색 트래픽에 대한 쓰기 제한을 구현합니다. 제한은 쓰기 활동이 많은 기간 동안 자동 백업 메커니즘이 지연되지 않고 효과적으로 작동하도록 하는 데 도움이 됩니다. 시스템은 쓰기 처리량을 일시적으로 줄임으로써 다중 AZ 트랜잭션 로그의 무결성을 유지합니다.이 로그는 빠른 데이터베이스 복구 및 재시작에 필수적입니다.

## 제한 범위
<a name="Durability.SearchThrottling.Scope"></a>

검색 인덱스에 속하는 키를 대상으로 하는 쓰기 명령만 제한됩니다. 인덱싱되지 않은 키에 대한 쓰기와 모든 읽기 명령은 영향을 받지 **않습니다**.

다음 명령은 인덱싱된 키를 대상으로 할 때 제한이 적용됩니다.


**검색 쓰기 제한이 적용되는 명령**  

| 카테고리 | 명령 | 
| --- | --- | 
| 해시 | HSET, HSETNX, HMSET, HINCRBY, HINCRBYFLOAT, HDEL | 
| JSON | JSON.SET, JSON.DEL, JSON.NUMINCRBY, JSON.NUMMULTBY, JSON.STRAPPEND, JSON.ARRAPPEND, JSON.ARRINSERT, JSON.ARRPOP, JSON.ARRTRIM, JSON.TOGGLE, JSON.CLEAR, JSON.MERGE | 
| Generic | DEL, UNLINK, RENAME, RENAMENX, COPY, RESTORE | 

## 클라이언트의 경험
<a name="Durability.SearchThrottling.ClientExperience"></a>

제한 명령은 **거부되지 않고 지연**됩니다. 영향을 받는 쓰기는 완료하는 데 시간이 오래 걸리지만 여전히 성공합니다. 클라이언트에 오류가 반환되지 않습니다.

다음 Amazon CloudWatch 지표를 통해 영향을 관찰할 수 있습니다.
+ `SuccessfulWriteRequestLatency` 및 `SearchBasedSetCmdsLatency` - 영향을 받는 쓰기의 지연 시간 증가를 반영합니다.
+ `SearchWriteThrottleActive`, `SearchWriteThrottledClientsCount`및 `SearchWriteThrottleEvents`- 조절이 활성 상태인지 여부와 어느 정도인지 나타냅니다. 세부 정보는 [모니터링](#Durability.SearchThrottling.Monitoring) 섹션을 참조하세요.

## 제한 활성화 시
<a name="Durability.SearchThrottling.Activation"></a>

시스템은 2시간 동안 검색 모듈의 라이터 스레드의 CPU 사용량을 모니터링합니다. 조절은 해당 기간 동안의 평균 CPU 사용량이 50%를 초과하면 활성화되고 허용되는 쓰기 속도를 조정하여 평균 사용률을 50%로 되돌립니다.

지표는 2시간 동안 평균화되므로 동일한 기간 내에서 낮은 사용량으로 상쇄되는 한 CPU 사용량이 짧게 버스트되어도 자체적으로 제한이 트리거되지 않습니다.

과도한 제한을 방지하기 위해 시스템은 현재 CPU 사용량도 실시간으로 평가합니다. 현재 CPU 사용량이 이미 50% 이하인 경우 2시간 평균이 임계값을 초과하더라도 시스템은 쓰기 속도를 더 낮추지 않고 안정적으로 유지합니다. 이렇게 하면 쓰기 용량이 정상 처리량의 50% 미만으로 떨어지지 않습니다.

## 제한 비활성화 시
<a name="Durability.SearchThrottling.Deactivation"></a>

2시간 평균 CPU 사용량이 50% 미만으로 떨어지면 시스템은 전체 처리량이 복원되고 제한이 비활성화될 때까지 허용되는 쓰기 속도를 점진적으로 높입니다.

## 모니터링
<a name="Durability.SearchThrottling.Monitoring"></a>

검색 쓰기 제한을 모니터링하는 데 사용할 수 있는 Amazon CloudWatch 지표는 다음과 같습니다.


**쓰기 제한 CloudWatch 지표 검색**  

| 지표 | 설명 | 단위 | 
| --- | --- | --- | 
| SearchWriteThrottleActive | 제한이 현재 활성 상태인지 여부를 나타냅니다. 1 = 활성, 0 = 비활성. | 부울 | 
| SearchWriteThrottledClientsCount | 현재 제한 중인 클라이언트 연결 수입니다. | 개수 | 
| SearchWriteThrottleEvents | 보고 간격 내의 스로틀 이벤트 수입니다. | 개수 | 
| SearchWriteCPUUtilization | 검색 라이터 스레드의 현재 CPU 사용률입니다. | % | 

## 모범 사례
<a name="Durability.SearchThrottling.BestPractices"></a>
+ **모니터링 `SearchWriteCPUUtilization`** - 검색 쓰기 CPU 사용량을 추적하여 워크로드 패턴을 이해하고 제한 임계값에 도달할 수 있는 시기를 예측합니다.
+ **모니터링 `SearchWriteThrottleActive`** - 스로틀링이 활성 상태인지 추적하여 즉시 조사하고 대응할 수 있습니다.
+ **2시간 기간 동안 지속적인 수집 계획** - 시스템은 2시간의 롤링 평균을 사용하므로 동일한 기간 내에서 더 낮은 사용량으로 상쇄되는 한 짧은 높은 쓰기 활동 버스트가 완전히 지원됩니다.
+ **조절이 지속되거나 빈번한 경우 클러스터 규모 조정 **- 워크로드가 지속적으로 임계값을 초과하고 조절이 애플리케이션의 지연 시간 요구 사항에 영향을 미치는 경우 용량을 추가하도록 규모 조정을 고려하세요.