client
Redis CLIENT
Redis Server 教育 Redis Server Course |
Redis 定期点検/技術支援 Redis Technical Support |
Redis エンタープライズサーバ Redis Enterprise Server |
---|
CLIENT
CLIENT ID
현재 연결된 CLIENT ID를 조회한다.
CLIENT ID는 CLIENT KILL|UNBLOCK 등에 사용된다.
ID는 새 연결마다 1씩 증가한다.
ID가 크면 나중에 연결된 것이다.
Example
명령> | client id |
결과> | 4 |
- Ver 5.0 부터 사용할 수 있습니다.
- 논리적 처리 소요시간은 O(1)입니다.
CLIENT UNBLOCK <id> [TIMEOUT|ERROR]
BRPOP 같은 blocking 명령을 실행하고 대기중인 클라이언트를 해제(UNBLOCK) 시킵니다. 디폴트 옵션는 timeout 입니다. 디폴트 옵션의 경우 클라이언트를 해제되고 메시지는 없습니다. Error 옵션을 사용하면 blocking 클라이언트는 해제시키고 에러 메시지(-UNBLOCKED client unblocked via CLIENT UNBLOCK)를 받습니다.
Example
명령> | client unblock 4 |
결과> | 1 |
- Ver 5.0 부터 사용할 수 있습니다.
- 논리적 처리 소요시간은 O(log(N))입니다. N은 클라이언트 연결 개수입니다.
클라이언트 id를 server.clients_index rax(radix tree) 구조체에서 찾습니다.
CLIENT TRACKING (on|off) [REDIRECT <id>]
CLIENT TRACKING ON 하면 Client side caching을 사용할 수 있습니다. REDIRECT 옵션은 subscribe로 메시지를 받을 client id를 지정합니다.
Example
명령> | client tracking on redirect 6 |
결과> | OK |
- Ver 6.0 부터 사용할 수 있습니다.
- CLIENT TRACKING (on|off) [REDIRECT <id>] [NOLOOP] [[OPTIN]|[OPTOUT]]
- CLIENT TRACKING (on|off) [REDIRECT <id>] [BCAST] [PREFIX first] [PREFIX second]
- 자세한 설명은 Client side caching를 보세요.
- 논리적 처리 소요시간은 O(1)입니다. enableTracking() tracking.c
redirect를 사용하면 O(log(N)) (client id 확인 시간)입니다. N은 클라이언트 연결 개수입니다.
CLIENT TRACKINGINFO
- 이 옵션은 버전 6.2부터 사용할 수 있습니다.
- Client Trackinginfo 정보를 보여줍니다.
Example
명령> | client trackinginfo |
결과> |
1) "flags" 2) 1) "on" 3) "redirect" 4) (integer) 56 5) "prefixes" 6) (empty array) |
- Flags
- off: Client side caching을 사용하지 않을 경우
- on: Client side caching을 사용했을 경우
- bcast: BCAST(broadcasting) 모드를 사용했을 경우
- optin: 클라이언트가 기본적으로 키를 캐시하지 않을 경우
- optout: 클라이언트가 기본적으로 키를 캐시할 경우
- caching-yes: 다음 명령이 키를 캐시합니다. (optin 옵션을 사용했을 경우)
- caching-no: 다음 명령이 키를 캐시하지 않습니다. (optout 옵션을 사용했을 경우)
- noloop: 클라이언트는 자체적으로 수정된 키에 대해 알림을 받지 않을 경우
- broken_redirect: 리디렉션에 사영된 클라이언 ID가 더 이상 유효하지 않을 경우
- Redirect: 리디렉션에 사용된 클라이언트 ID, 없을 경우 -1
- Prefixes: 키 접두사(prefix) 목록
CLIENT GETREDIR
CLIENT TRACKING에서 지정한 redirect id를 조회합니다.
Example
명령> | client getredir |
결과> | 6 |
- Ver 6.0 부터 사용할 수 있습니다.
- 논리적 처리 소요시간은 O(1)입니다. c->client_tracking_redirection
<< FAILOVER | CLIENT | CLIENT GETNAME >> |
---|
Email
返事がかかってなれば、メールでお知らせします。