Vix: C++의 “Node.js”, 가비지 컬렉터 없이

발행: (2026년 1월 31일 오전 12:51 GMT+9)
3 분 소요
원문: Dev.to

Source: Dev.to

개요

Vix는 C++20 기반의 최신 런타임/프레임워크로, 고성능 웹 서버와 API를 구축하는 데 초점을 맞추고 있습니다. Node/Deno에 대한 네이티브 대안을 제공하며, 다음을 중점으로 설계되었습니다:

  • 비동기 I/O (Asio 사용)
  • 모듈식 아키텍처
  • 가비지 컬렉터 없음
  • 낮은 오버헤드

분산 백엔드, 오프라인‑first, 피어‑투‑피어 애플리케이션 등에 이상적입니다.

주요 기능

  • 비동기 HTTP 서버 (Asio)
  • 라우팅미들웨어
  • 네이티브 JSON
  • CLI를 통한 스캐폴드, 빌드, 실행
  • 선택적 모듈: ORM, WebSockets, 유틸리티 등
  • 성능과 오프라인/P2P 애플리케이션에 초점을 맞춘 설계

설치

git clone https://github.com/vixcpp/vix.git
cd vix
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j

옵션: 프로젝트 문서에 따라 헤더와 아티팩트를 시스템에 설치하십시오.

의존성으로 사용하기

  1. 헤더와 컴파일된 라이브러리를 프로젝트에 포함합니다.
  2. CMakeLists.txt를 설정하여 vix 라이브러리를 링크합니다.

빠른 예제

소스 코드 (main.cpp)

#include 
using namespace vix;

int main() {
    App app;

    app.get("/", [](Request&, Response& res) {
        res.send("Hello world from Vix!");
    });

    app.run(8080);
}

CMake로 빌드

cmake_minimum_required(VERSION 3.15)
project(MyVixApp)

add_executable(my_vix_app main.cpp)

# Vix가 설치되거나 컴파일된 경로에 맞게 조정
target_include_directories(my_vix_app PRIVATE /caminho/para/vix/include)
target_link_libraries(my_vix_app PRIVATE vix)

컴파일하고 실행합니다:

mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build .
./my_vix_app

브라우저에서 http://localhost:8080에 접속하면 “Hello world from Vix!” 메시지를 확인할 수 있습니다.

추가 정보

공식 저장소:

Back to Blog

관련 글

더 보기 »