더보기
이 프로젝트의 개발 환경
- 개발 언어 및 주요 환경
- Visual Studio 2017
- C++ 17
- 기타 환경
- Redis 3.0.504
- CMake 3.29.0
- Windows OS 10
hiredis란?
hiredis는 C 언어용 라이브러리로 Redis 서버와의 연결과 명령문 실행을 위한 주요 함수를 제공합니다.
hiredis를 C++ 프로젝트에 포함시키려면 make를 통해 lib 및 dll 파일을 구성하여 외부 종속성으로 연결합니다.
hiredis 설치 및 빌드
hiredis를 사용해 C++ 환경에서 Redis 서버를 연동하려면 우선 다음 환경 구성이 필요합니다.
기본 환경 구성을 마쳤다면 github.com: redis/hiredis에서 hiredis를 설치합니다.
다운로드한 zip 파일을 압축 해제하고 CMake에서 VS 솔루션을 생성합니다.
Where is the source code | Where to build the binaries | Configure |
압축 해제한 |
VS 솔루션이 새로 생성되는 경로입니다. | VS 솔루션 생성을 위한 설정을 마칩니다. |
설정을 마치고 configuring done이 표시되면 Generate를 클릭합니다.
지정된 경로에서 VS 솔루션이 생성되면 호환되는 IDE에서 프로젝트를 엽니다.
빌드에 앞서 IDE 상단 툴바 | 프로젝트 | 속성 | 구성 속성 | 일반 탭에서 다음과 같이 변경합니다.
- 문자 집합을
기본 멀티 바이트 문자 집합에서유니코드 문자 집합 사용으로 변경 - 정적 lib 출력만을 원한다면 고급 속성 | 대상 파일 확장명을
.dll에서.lib으로 변경
프로젝트 속성을 변경 후 빌드합니다.
빌드가 완료되면 프로젝트 루트 디렉토리 기준 Release 디렉토리가 생성되며 hiredis.lib 파일이 추출됩니다.
프로젝트 구성 및 실행
Redis 클라이언트를 구현하려는 프로젝트에서 IDE 상단 툴바 | 프로젝트 | 속성 | 구성 속성 탭에서 다음과 같이 변경합니다.
C/C++ | 일반 | 추가 포함 디렉터리 | 링커 | 일반 | 링커 | 입력 |
make 후 빌드로 추출된 |
소스 코드를 다음과 같이 작성하고 로컬 Redis 서버와의 연결을 확인합니다.
#include <iostream>
#include <hiredis.h>
#ifdef _MSC_VER
#include <winsock2.h>
#endif
int main(int argc, char** argv)
{
std::cout << "Let's start hiredis world" << std::endl;
redisContext* context;
redisReply* reply;
const char* host = "127.0.0.1";
const int port = 6379;
context = redisConnect(host, port);
if (NULL == context || context->err)
{
std::cout << "Connection to redis server refused!!" << std::endl;
if (context)
{
redisFree(context);
}
}
reply = (redisReply*)redisCommand(context, "PING");
std::cout << "PING: " << reply->str << std::endl;
freeReplyObject(reply);
}
코드 | 비고 | |
Redis 기본 포트 |
||
연결된 Redis 서버에 |
||
PING 요청에 따른 |
'C++ > Libraries, Plugins, 3rd-Party' 카테고리의 다른 글
(Boost) 부스트 라이브러리 설치하고 프로젝트에 import하기 (0) | 2024.02.21 |
---|