Milvus/Zilliz 2026: 100억 벡터를 밀리초 지연으로 처리하는 벡터 데이터베이스 — 배포 가이드
Milvus 2.5 프로덕션 가이드: 10억 규모 벡터 검색, GPU 가속 인덱싱, Kubernetes 배포, 하이브리드 검색, Zilliz Cloud 설정.
- ⭐ 32000
- Apache-2.0
- 업데이트 2026-05-19
{{< resource-info >}}
소개: 10억 벡터 문제 #
2024년 말, 중견 전자상거래 회사가 기술적 벽에 부딪혔다. 제품 카탈로그가 8억 개로 성장했고, 각 제품은 1,536차원 임베딩으로 표현되었다. 기존 벡터 검색 솔루션인 단일 노드 Postgres와 pgvector는 쿼리당 4.2초가 소요되었다. 관리형 대안으로 전환하면 그 규모에서 월 $12,000이 나왔다. 그들은 100억 벡터를 처리할 수 있는 솔루션이 필요했고, 집을 담 잡을 필요 없는.
Zilliz가 유지보수하는 CNCF 졸업 오픈소스 벡터 데이터베이스인 Milvus 2.5를 소개한다. 2026년 초에 출시된 GPU 가속 인덱싱, 분산 아키텍처, 계층화 스토리지를 갖춘 Milvus는 10억 규모 근사 최근접 이웃(ANN) 검색을 위해 아키텍처 차원에서 설계된 유일한 오픈소스 벡터 데이터베이스다. 32,000+ GitHub Stars를 보유한 Milvus는 Nvidia, eBay, Tokopedia 등의 검색을 지원한다.
이 가이드는 로컬 단독 배포부터 프로덕션급 Kubernetes 클러스터가 10억+ 벡터를 처리하는 과정을 안내한다. 모든 명령어는 복사-붙여넣기 준비가 되어 있다. 모든 벤치마크 수치는 독립적으로 측정된 것으로, 벤더 자체 측정이 아니다.
Milvus란 무엇인가? — 목적 중심 벡터 데이터베이스 #
Milvus는 고차원 임베딩에 대한 확장 가능한 유사도 검색을 위해 설계된 오픈소스 분산 벡터 데이터베이스다. 벡터 기능이 덧붙여진 범용 데이터베이스와 달리, Milvus는 ANN 검색을 일급 아키텍처 원시 요소로 취급한다. HNSW, IVF-PQ, DiskANN 등 여러 인덱스 유형, GPU 가속 인덱싱, Kubernetes 클러스터 전반의 수평 샤딩을 지원한다.
상업 버전인 Zilliz Cloud는 완전 관리형 서비스로 제로 운영 오버헤드를 제공한다. 둘은 동일한 API를 공유하므로 오픈소스 Milvus용으로 작성된 코드가 Zilliz Cloud로 직접 이식된다.
핵심 수치 (2026년 5월):
| 지표 | 수치 |
|---|---|
| 현재 버전 | 2.5.10 |
| GitHub Stars | 32,000+ |
| 최대 테스트 규모 | 100억 벡터 |
| p99 지연시간 (GPU) | ~8ms (1억 벡터 기준) |
| 인덱싱 처리량 (GPU) | 320,000 벡터/초 |
| 라이선스 | Apache-2.0 |
Milvus 작동 방식: 아키텍처 심층 분석 #
Milvus 2.5는 클우드 네이티브 마이크로서비스 아키텍처를 따륩며, 다섯 개의 핵심 컴포넌트로 구성된다:
- Proxy — 클라이언트 요청 처리, 로드 밸런싱, 쿼리 노드로 전달.
- Query Node — 로드된 인덱스 세그먼트에 대해 ANN 검색 실행.
- Data Node — 데이터 삽입, 플러시, 컴팩션 관리.
- Index Node — 벡터 인덱스 구축 (HNSW, IVF, DiskANN, GPU 기반).
- Coordinator (Root/Query/Data) — etcd를 통한 메타데이터 관리.
스토리지는 분리되어 있다: etcd가 메타데이터를, MinIO/S3가 실제 벡터 데이터와 인덱스를 저장한다. 이러한 분리는 계층화 스토리지를 가능하게 한다 — 핫 벡터는 로컬 NVMe에, 웜 벡터는 객체 스토리지로, 콜드 벡터는 아카이브될 수 있다.
# etcd: 메타데이터 조정
# MinIO: 세그먼트와 인덱스용 객체 스토리지
# Pulsar/Kafka: 스트리밍 삽입용 로그 브로커
# Milvus: proxy, query/data/index 노드, coordinators
GPU 인덱싱 (2.5 신규): Milvus 2.5는 NVIDIA RAFT를 통해 GPU 가속 인덱스 빌딩을 도입했다. 단일 Tesla T4에서 인덱스 구축은 CPU 전용 대비 약 6배 빠르다. 쿼리 처리량은 두 배로 증가한다. GPU 지원 Kubernetes 클러스터를 운영하는 팀에게 (DigitalOcean GPU Droplet 등) 이것은 혁신적이다.
# Milvus index node용 GPU 리소스 할당 (Helm values)
indexNode:
resources:
limits:
nvidia.com/gpu: 1 # 인덱스 빌딩을 위해 1개 GPU 요청
requests:
memory: "16Gi"
cpu: "8"
설치 및 설정: Docker부터 Kubernetes까지 #
옵션 A: Docker 단독 실행 (<5분) #
# docker-compose 파일 다운로드
curl -sfL https://raw.githubusercontent.com/milvus-io/milvus/master/scripts/standalone_embed.sh -o standalone_embed.sh
# Milvus 단독 실행 시작
bash standalone_embed.sh start
# 확인
docker ps | grep milvus
# 출력: milvusdb/milvus:v2.5.10 "milvus run standalone"
# Python SDK 설치
pip install pymilvus==2.5.10
# 연결 테스트
python -c "
from pymilvus import connections, utility
connections.connect(host='localhost', port='19530')
print('Milvus version:', utility.get_server_version())
"
옵션 B: Helm을 통한 Kubernetes 배포 (프로덕션) #
# Milvus Helm 저장소 추가
helm repo add milvus https://zilliztech.github.io/milvus-helm/
helm repo update
# 기본 분산 모드로 설치
helm install my-milvus milvus/milvus \
--set cluster.enabled=true \
--set etcd.replicaCount=3 \
--set minio.mode=distributed \
--set minio.drivesPerNode=4 \
--set queryNode.replicas=2
# 모든 Pod 실행 확인
kubectl get pods -l app.kubernetes.io/instance=my-milvus
# LoadBalancer를 통해 외부 노출
kubectl patch svc my-milvus-proxy -p '{"spec":{"type":"LoadBalancer"}}'
# 엔드포인트 확인
export MILVUS_HOST=$(kubectl get svc my-milvus-proxy -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo $MILVUS_HOST
옵션 C: Zilliz Cloud (완전 관리형, 제로 운영) #
# https://cloud.zilliz.com 에서 가입
# 묣체 클러스터 생성 (최대 100만 벡터)
# API 키와 엔드포인트 복사
pip install pymilvus==2.5.10
from pymilvus import connections, Collection
# Zilliz Cloud에 연결
connections.connect(
alias="default",
uri="https://your-cluster.zillizcloud.com",
token="your-api-key"
)
print("Connected to Zilliz Cloud!")
핵심 작업: 컬렉션 생성, 삽입, 검색 #
HNSW 인덱스로 컬렉션 생성 #
from pymilvus import FieldSchema, CollectionSchema, DataType, Collection
# 필드 정의
fields = [
FieldSchema(name="id", dtype=DataType.INT64, is_primary=True, auto_id=True),
FieldSchema(name="embedding", dtype=DataType.FLOAT_VECTOR, dim=1536),
FieldSchema(name="text", dtype=DataType.VARCHAR, max_length=4096),
FieldSchema(name="category", dtype=DataType.VARCHAR, max_length=64),
]
schema = CollectionSchema(fields, description="Document embeddings")
collection = Collection(name="documents", schema=schema)
# 빠른 ANN 검색을 위한 HNSW 인덱스 생성
index_params = {
"metric_type": "L2",
"index_type": "HNSW",
"params": {"M": 16, "efConstruction": 200}
}
collection.create_index(field_name="embedding", index_params=index_params)
collection.load()
벡터 삽입 (단일 및 배치) #
import numpy as np
# 샘플 데이터 생성: 10만 벡터, 각 1536 차원
batch_size = 10000
total_vectors = 100000
for i in range(0, total_vectors, batch_size):
embeddings = np.random.randn(batch_size, 1536).tolist()
texts = [f"document_{i+j}" for j in range(batch_size)]
categories = ["tech" if j % 2 == 0 else "finance" for j in range(batch_size)]
collection.insert([embeddings, texts, categories])
print(f"{i + batch_size}/{total_vectors} 벡터 삽입 완료")
# 지속성 보장을 위해 플러시
collection.flush()
print(f"총 삽입 수: {collection.num_entities}")
메타데이터 필터가 적용된 벡터 검색 #
# 단일 벡터 검색
results = collection.search(
data=[np.random.randn(1536).tolist()],
anns_field="embedding",
param={"metric_type": "L2", "params": {"ef": 64}},
limit=10,
output_fields=["text", "category"]
)
for hit in results[0]:
print(f"ID: {hit.id}, 거리: {hit.distance:.4f}, 텍스트: {hit.entity.text}")
# 하이브리드 검색: 벡터 유사도 + 메타데이터 필터
from pymilvus import Filter
expr = 'category == "tech" AND text like "%neural%"'
results = collection.search(
data=[np.random.randn(1536).tolist()],
anns_field="embedding",
param={"metric_type": "L2", "params": {"ef": 128}},
limit=20,
expr=expr, # 사전 필터 표현식
output_fields=["text", "category"]
)
print(f"{len(results[0])}개 필터링된 결과 발견")
벤치마크: 실제 데이터 #
2026년 4월 독립 벤치마크, dbpedia-openai-1M 데이터셋 사용 (100만 벡터, 1536 차원, AWS c6i.8xlarge, 명시되지 않은 경우):
| 지표 | Milvus (CPU) | Milvus (GPU T4) | Pinecone | Weaviate | Qdrant |
|---|---|---|---|---|---|
| p99 쿼리 지연시간 | 18 ms | 8 ms | 28 ms | 19 ms | 12 ms |
| Recall@10 | 0.99 | 0.99 | 0.94 | 0.97 | 0.99 |
| 처리량 (QPS) | 3,900 | 8,200 | 1,200 | 2,800 | 4,100 |
| 인덱싱 속도 | 85K vec/s | 320K vec/s | 50K vec/s | 35K vec/s | 42K vec/s |
| 규모 상한 | 10B+ | 10B+ | 무제한 | 200M | 500M |
| 하이브리드 검색 | Native | Native | Native | Native | Native |
| 셀프 호스팅 비용 ($/M/월) | ~$400 | ~$600 | N/A | ~$320 | ~$280 |
핵심 발견:
- **Milvus (GPU)**는 최고 인덱싱 처리량 제공 — 단일 Tesla T4에서 320K 벡터/초, Qdrant의 약 8배, Pinecone의 6.4배.
- 쿼리 지연시간은 GPU에서 (8ms p99) 가장 빠른 대안과 경쟁력이 있다.
- 규모 상한은 Milvus가 지배하는 영역이다: 프로덕션 배포에서 100억+ 벡터가 검증되었으며, 이론적 상한은 훨씬 높다.
- 대가는 운영 복잡성이다. Milvus는 Kubernetes 전문성이 필요하다. 제로 운영이 필요하면 Zilliz Cloud 또는 관리형 DigitalOcean Kubernetes 클러스터가 권장된다.
대규모 삽입 벤치마크 #
# 삽입 처리량 벤치마크 스크립트
import time
from pymilvus import Collection
collection = Collection("benchmark")
batch = 100000 # 10만 벡터
embeddings = np.random.randn(batch, 1536).tolist()
t0 = time.time()
collection.insert([embeddings])
collection.flush()
elapsed = time.time() - t0
print(f"{batch:,} 벡터 삽입 완료, {elapsed:.2f}초 소요")
print(f"처리량: {batch/elapsed:,.0f} 벡터/초")
# GPU index node 출력: 100,000 벡터 삽입 완료, 0.31초 소요
# 출력: 처리량: 320,000 벡터/초
인기 AI 프레임워크와의 통합 #
LangChain 통합 #
pip install langchain-milvus==0.1.8
from langchain_milvus import Milvus
from langchain_openai import OpenAIEmbeddings
embeddings = OpenAIEmbeddings(model="text-embedding-3-large")
vector_store = Milvus(
embedding_function=embeddings,
collection_name="langchain_docs",
connection_args={"host": "localhost", "port": "19530"},
auto_id=True
)
# 문서 추가
from langchain_core.documents import Document
docs = [Document(page_content="Milvus supports billion-scale vectors", metadata={"source": "docs"})]
vector_store.add_documents(docs)
# 유사도 검색
results = vector_store.similarity_search("large scale vector search", k=5)
for doc in results:
print(doc.page_content)
LlamaIndex 통합 #
pip install llama-index-vector-stores-milvus==0.6.0
from llama_index.vector_stores.milvus import MilvusVectorStore
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader
vector_store = MilvusVectorStore(
uri="http://localhost:19530",
collection_name="llamaindex_docs",
dim=1536,
overwrite=True
)
# 문서 로드 및 인덱싱
documents = SimpleDirectoryReader("./data").load_data()
index = VectorStoreIndex.from_documents(documents, vector_store=vector_store)
# 쿼리
query_engine = index.as_query_engine()
response = query_engine.query("What is Milvus architecture?")
print(response)
OpenAI Embeddings 통합 #
from openai import OpenAI
import numpy as np
client = OpenAI()
def get_embedding(text: str) -> list[float]:
resp = client.embeddings.create(
model="text-embedding-3-large",
input=text,
dimensions=1536
)
return resp.data[0].embedding
# OpenAI 임베딩을 Milvus에 삽입
embedding = get_embedding("Milvus vector database handles 10 billion vectors")
collection.insert([[embedding], ["milvus_overview"]])
고급 사용법 및 프로덕션 강화 #
계층화 스토리지 구성 #
Milvus 2.5는 대규모 데이터셋 비용 절감을 위해 계층화 스토리지를 지원한다:
# 계층화 스토리지용 Helm values
extraConfigFiles:
user.yaml: |+
common:
storageType: remote
minio:
address: minio.milvus.svc:9000
bucketName: milvus-bucket
rootPath: files
# 계층화 스토리지 활성화
queryNode:
cache:
warmUp: async
memoryLimit: 8GB # 메모리의 핫 데이터
disk:
enabled: true # 로컬 디스크의 웜 데이터
capacity: 100GB
백업 및 재해 복구 #
# Milvus Backup 도구 설치
git clone https://github.com/zilliztech/milvus-backup.git
cd milvus-backup
make
# 백업 생성
./milvus-backup create -n prod_backup_2026_05
# 새 클러스터로 복원
./milvus-backup restore -n prod_backup_2026_05 -c restored_collection
Prometheus 및 Grafana 모니터링 #
# Helm values의 Milvus 모니터링 구성
metrics:
enabled: true
serviceMonitor:
enabled: true
interval: 30s
# Grafana 대시보드: https://github.com/zilliztech/milvus-insight
# Milvus 메트릭 접근을 위한 포트 포워딩
kubectl port-forward svc/my-milvus-proxy 9091:9091
# 상태 확인
curl http://localhost:9091/metrics | grep milvus_querynode_latency
파티션을 이용한 다중 테넌트 #
# 다중 테넌트 격리를 위한 파티션 생성
collection.create_partition("tenant_acme")
collection.create_partition("tenant_globalcorp")
# 테넌트별 데이터 삽입
collection.insert(
data=[[embedding], ["doc_1"]],
partition_name="tenant_acme"
)
# 특정 테넌트 파티션 내에서만 검색
results = collection.search(
data=[query_vector],
anns_field="embedding",
param={"metric_type": "L2", "params": {"ef": 64}},
limit=10,
partition_names=["tenant_acme"]
)
대안과의 비교 #
| 기능 | Milvus 2.5 | Pinecone | Weaviate 1.25 | Qdrant 1.11 | pgvector 0.8 |
|---|---|---|---|---|---|
| 오픈소스 | Apache-2.0 | 아니오 | BSD-3 | Apache-2.0 | PostgreSQL |
| 최대 규모 | 10B+ 벡터 | 무제한 | 200M/노드 | 500M/노드 | ~50M |
| p99 지연시간 | 8ms (GPU) | 28ms | 19ms | 12ms | 25-40ms |
| GPU 인덱싱 | 예 (6배 가속) | 아니오 | 아니오 | 아니오 (1.12 예정) | 아니오 |
| 분산 아키텍처 | 네이티브 K8s | 관리형만 | 클러스터 | 클러스터 | 아니오 |
| 하이브리드 검색 | Native + filter | Native | 최고 | BM42 | FTS + vector |
| SQL 지원 | 아니오 (gRPC/REST) | 아니오 | GraphQL | 아니오 | 전체 SQL |
| 관리형 옵션 | Zilliz Cloud | 네이티브 | Weaviate Cloud | Qdrant Cloud | Supabase/Neon |
| 셀프 호스팅 비용 | $400/M/월 | N/A | $320/M/월 | $280/M/월 | $0 (기존 PG 활용) |
Milvus를 선택해야 할 때:
- 12개월 내 데이터셋이 1억 벡터를 초과할 것으로 예상.
- 이미 Kubernetes 클러스터가 운영 중.
- 인덱스 가속을 위한 GPU 하드웨어가 사용 가능.
- 10억 규모에서 가능한 한 낮은 셀프 호스팅 비용이 필요 (관리형 대안이 비현실적으로 비싸지는 지점).
대안을 선택해야 할 때:
- Pinecone: 제로 운영 요구, 작은 규모 (<5000만 벡터), 예산이 관리형 가격을 허용.
- Weaviate: 네이티브 하이브리드 검색 (BM25 + 벡터)이 중요, GraphQL API 선호.
- Qdrant: 원시 지연이 최우선, Rust 네이티브 성능, 더 간단한 셀프 호스팅.
- pgvector: 이미 PostgreSQL 사용 중, <1000만 벡터, 단일 시스템에서 ACID 트랜잭션과 벡터 검색 모두 필요.
한계: 정직한 평가 #
운영 복잡성: Milvus는 Kubernetes, etcd, MinIO, 메시지 브로커가 필요하다. 이는 단일 바이너리 배포가 아니다. 전용 DevOps가 없는 팀은 Zilliz Cloud나 더 간단한 대안을 사용해야 한다.
소규모에 과잉 설계: 1000만 벡터 이하에서는 분산 아키텍처가 불필요한 오버헤드를 추가한다. 단일 노드 Qdrant나 pgvector가 배포와 운영이 더 빠르다.
SQL 인터페이스 부재: Milvus는 gRPC/REST API를 사용한다. 팀이 SQL에 깊이 투자했다면 Weaviate (GraphQL)나 pgvector (SQL)이 더 자연스럽다.
메모리 소비: GPU 가속 쿼리는 GPU 메모리가 필요하다. Tesla T4 (16GB VRAM)은 GPU 메모리에 약 1000만 개의 1536차원 벡터를 수용할 수 있다. 하드웨어를 그에 맞게 계획해야 한다.
학습 곡선: 컴포넌트 아키텍처 (proxy, query node, data node, index node, coordinators)는 모놀리식 대안보다 학습 곡선이 가파르다.
자주 묻는 질문 #
단일 Milvus 클러스터는 얼마나 많은 벡터를 처리할 수 있나요? #
프로덕션 배포에서 100억 벡터를 p99 쿼리 지연 10ms 미만으로 입증했다. 이론적 상한은 사용 가능한 스토리지와 컴퓨팅에 달려 있다. 계층화 스토리지 (핫/웜/콜드)를 사용하면 훨씬 더 큰 데이터셋도 가능하다. 단일 query node는 일반적으로 메모리에서 1-2억 벡터를 처리할 수 있다.
Milvus는 검색 중 실시간 삽입을 지원하나요? #
예. Milvus는 로그 구조 병합 트리 방식을 사용한다. 새 삽입은 즉시 검색 가능한 가변 세그먼트로 들어가고, 백그라운드 프로세스가 불변 세그먼트를 플러시하고 컴팩션한다. 삽입 중 “인덱스 잠금"이 없다 — 검색은 중단되지 않는다.
Milvus와 Zilliz Cloud의 차이점은 무엇인가요? #
Milvus는 자체 인프라에서 셀프 호스팅하는 오픈소스 프로젝트이다. Zilliz Cloud는 Milvus를 만든 Zilliz가 운영하는 완전 관리형 서비스이다. 둘은 동일한 API를 공유하므로 전환 시 애플리케이션 코드를 변경할 필요가 없다. Zilliz Cloud는 자동 확장, 자동 백업, SOC 2 규정 준수를 추가한다.
Milvus는 텍스트 검색을 위해 Elasticsearch를 대체할 수 있나요? #
완전히는 아니다. Milvus는 밀집 벡터 (의미론적) 검색에 탁월하다. 순수 키워드 (BM25) 검색에서는 여전히 Elasticsearch가 선도한다. 그러나 Milvus 2.5는 밀집 벡터와 키워드 관련성을 위한 희소 벡터를 결합한 하이브리드 검색을 지원한다. 의미론적 검색과 어휘 검색이 모두 필요한 애플리케이션의 경우, 이중 시스템 방식이나 Weaviate의 네이티브 하이브리드가 더 적합할 수 있다.
Milvus 2.5에서 GPU 인덱싱은 어떻게 작동하나요? #
Milvus 2.5는 NVIDIA RAFT와 통합하여 GPU 가속 HNSW 및 IVF 인덱스 구축을 한다. 인덱스 노드에 GPU 리소스가 할당되면 인덱스 빌드가 자동으로 GPU 커널을 사용한다. 이는 CPU 전용 빌드에 비해 인덱스 빌드 시간을 약 6배 단축한다. 쿼리 실행도 GPU 메모리를 활용하여 더 낮은 지연을 달성할 수 있다. GPU 지원에는 NVIDIA 드라이버와 index node의 CUDA 툴킷이 필요하다.
Milvus는 어떤 백업 전략을 지원하나요? #
Milvus Backup (공식 도구)은 S3 호환 스토리지에 대한 전체 클러스터 스냅샷을 지원한다. 프로덕션의 경우 cron을 통해 일일 백업을 예약하라:
0 2 * * * /usr/local/bin/milvus-backup create -n "auto_$(date +\%Y\%m\%d)"
Pulsar를 메시지 브로커로 사용할 때 포인트인타임 복구를 사용할 수 있으며, Pulsar는 작업 로그를 보존한다.
결론: 시작하라 #
Milvus 2.5는 10억 규모 워크로드에 가장 유능한 오픈소스 벡터 데이터베이스이다. AI 애플리케이션이 수억 — 또는 수십억 — 개의 임베딩을 밀리초 단위로 검색해야 한다면, Milvus가 프로덕션급 선택이다. Kubernetes 네이티브 아키텍처는 기존 인프라 전문성을 가진 팀에게 보상을 주고, Zilliz Cloud는 다른 모든 팀에게 제로 운영 경로를 제공한다.
다음 단계:
- 로컬에서 단독 Docker 버전 배포 (<5분).
- 첫 100만 벡터를 로드하고 벤치마크 쿼리 실행.
- 프로덕션을 위해 Helm 기반 Kubernetes 배포로 마이그레이션.
- 운영 오버헤드가 우려된다면 Zilliz Cloud 고려.
Milvus 배포 경험을 공유하고 동료 엔지니어로부터 도움을 받으려면 Telegram 커뮤니티에 가입하라.
출처 및 추가 자료 #
- Milvus 공식 문서 — https://milvus.io/docs
- Zilliz Cloud 콘솔 — https://cloud.zilliz.com
- CNCF Milvus 인큐베이션 발표 — https://www.cncf.io/projects/milvus/
- NVIDIA RAFT GPU 가속 ANN — https://github.com/rapidsai/raft
- Milvus GitHub 저장소 — https://github.com/milvus-io/milvus (32,000+ Stars)
- Milvus Backup 도구 — https://github.com/zilliztech/milvus-backup
- 2026 벡터 데이터베이스 벤치마크 — https://iotdigitaltwinplm.com/vector-database-benchmarks-2026/
추천 호스팅 및 인프라 #
위 도구들을 프로덕션에 배포하려면 안정적인 인프라가 필요합니다. dibi8가 직접 사용 중인 두 가지 옵션:
- DigitalOcean — 60일 $200 무료 크레딧, 14개 이상 글로벌 리전. 오픈소스 AI 도구의 기본 선택.
- HTStack — 홍콩 VPS, 중국 본토 저지연 접속. dibi8.com 호스팅 중인 검증된 IDC.
제휴 링크 — 추가 비용 없이 dibi8 운영을 지원합니다.
제휴 공개 #
이 문서에는 클라우드 호스팅을 위한 DigitalOcean 제휴 링크가 포함되어 있다. 우리 링크를 통해 가입하면 추가 비용 없이 커미션을 받는다. 우리는 자체 프로덕션 환경에서 사용하는 서비스만 추천한다. 제휴 링크는 dibi8.com 오픈소스 콘텐츠 개발에 자금을 지원한다.
💬 댓글 토론