컴공

Valkey 이해

vy00 2026. 5. 15. 22:23

Valkey 서버가 이해하고 실행할 수 있는 새 명령어를 추가하는 과정

'입력한 명령어 -> 서버가 찾음 -> 연결된 함수 실행 -> 결과 반환'

 

* Valkey 명령어 처리 흐름

Valkey는 클라이언트로부터 명령어를 입력받으면 다음과 같이 처리한다.

클라이언트 입력 -> 명령어 Lookup -> command table 검색 -> 연결된 함수 실행 -> 결과 반환

 

실제 Valkey 내부에서는 c -> cmd -> proc(c)를 통해 실제 명령 함수가 실행된다.

 

1. server.c 수정

// 입력받은 문자열을 그대로 반환하는 구조
void echoYejinCommand(client *c) {
    addReplyBulk(c, c->argv[1]);
}

 

2. server.h 선언 추가

// 처음에 선언을 안 해서 오류가 났다.
// 헤더 선언 해줘야한다.
void echoYejinCommand(client *c) {
    addReplyBulk(c, c->argv[1]);
}

 

3. commands.def 등록

// command table에 새로운 명령어 등록
{MAKE_CMD("echoyejin", ... echoYejinCommand, ...),.args=ECHO_Args},

 echoyejin -> echoYejinCommand 구조 연결

 

4. 빌드 및 테스트

 

'컴공' 카테고리의 다른 글

echo 응답 가공하기  (0) 2026.05.23
Redis RESP 2,3 프로토콜 실습하기  (0) 2026.05.02
git commit 과정  (0) 2026.04.24