

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

# Serverless에서 Watch 시작하기
<a name="ServerlessWatch"></a>

ElastiCache는 `WATCH` 명령을 지원하므로 키에서 변경 사항을 모니터링하고 조건부 [트랜잭션](https://valkey.io/topics/transactions/)을 실행할 수 있습니다. 이 `WATCH` 명령은 모니터링되는 키가 수정되지 않은 경우에만 트랜잭션이 실행되도록 하여 낙관적 동시성 제어가 필요한 애플리케이션에 특히 유용합니다. 여기에는 쓰기 명령과 같은 클라이언트의 수정 사항과 만료 또는 제거와 같은 Valkey 자체의 수정 사항이 포함됩니다. 키가에 설정된 시간부터 `WATCH` 키를 받은 시간까지 수정된 경우 전체 트랜잭션`EXEC`이 중단됩니다.

ElastiCache Serverless의 경우 다음과 같은 제약 조건이 도입됩니다.

ElastiCache Serverless`WATCH`는 단일 해시 슬롯으로 범위가 지정됩니다. 즉, 동일한 해시 슬롯에 매핑되는 키만 동일한 연결로 동시에 감시할 수 있으며, 감시 명령을 따르는 트랜잭션은 동일한 해시 슬롯에서만 작동할 수 있습니다. 애플리케이션이 다른 해시 슬롯의 키를 감시하거나 감시된 키와 다른 해시 슬롯에 매핑된 키에서 작동하는 트랜잭션 명령을 실행하려고 하면 `CROSSSLOT` 오류가 반환됩니다. [해시 태그를](https://valkey.io/topics/cluster-spec/#hash-tags) 사용하여 여러 키가 동일한 해시 슬롯에 매핑되도록 할 수 있습니다.

또한 감시 키가 있는 연결 내에서 `SCAN` 명령을 실행할 수 없으며 `command not supported during watch state` 오류가 반환됩니다.

ElastiCache Serverless가 키가 수정되었는지 확실하지 않은 경우 트랜잭션이 중단됩니다(시계된 키를 터치한 것처럼). 예를 들어 슬롯이 마이그레이션되어 감시된 키를 동일한 노드에서 찾을 수 없는 경우를 예로 들 수 있습니다.

**코드 예제**

## 서로 다른 슬롯의 키에서 감시 및 작동
<a name="w2aac24c33c15b1"></a>

다음 예제에서는 감시된 키와 `SET` 명령에 지정된 키가 서로 다른 해시 슬롯에 매핑됩니다. 실행은를 반환합니다`CROSSSLOT ERROR`.

```
> WATCH foo:{005119} 
OK 
> MULTI 
OK 
> SET bar:{011794} 1234 
QUEUED 
> EXEC 
CROSSSLOT Keys in request don't hash to the same slot
```

## 동일한 슬롯의 키에서 감시 및 작동
<a name="w2aac24c33c15b3"></a>

다음 예제에서는의 키 세트가 변경되지 `WATCH` 않았으므로 성공적인 트랜잭션을 보여줍니다.

```
> WATCH foo:{005119} 
OK 
> MULTI 
OK 
> SET bar:{005119} 1234 
QUEUED 
> EXEC 
1) OK
```

## 서로 다른 슬롯의 감시 키
<a name="w2aac24c33c15b5"></a>

다음 예제에서는 동일한 클라이언트 연결 내에서 서로 다른 슬롯의 `WATCH` 키를 동시에 입력하려고 하면가 반환됩니다`CROSSSLOT ERROR`.

```
> WATCH foo:{005119} 
OK 
> WATCH bar:{123455}  
CROSSSLOT Keys in request don't hash to the same slot
```

## 감시 제한
<a name="ServerlessWatch.size"></a>

모든 클라이언트 연결은 동시에 최대 1,000개의 키를 감시할 수 있습니다.

## Watch와 관련하여 지원되는 명령
<a name="SupportedCommandsWatch"></a>

[WATCH](https://valkey.io/commands/watch/) 및 [UNWATCH](https://valkey.io/commands/unwatch/) 명령은 [Valkey.io](https://valkey.io/) 웹 사이트에 설명되어 있습니다. 구문, 동작, 반환 값 및 잠재적 오류 조건을 포함하여 명령에 대한 포괄적인 개요를 제공합니다.