📖 용어 정리항목설명APISIX Lua 변환API 요청이 APISIX에 도착했을 때 Lua 코드로 JSON/데이터를 변환Kafka Connect SMT 변환Kafka Connect가 Kafka Topic에 적재할 때 (또는 읽을 때) 데이터 포맷을 변환하는 플러그인 기능🧠 변환 위치 기준위치설명APISIX (Ingress)요청(Request)이 Backend로 가기 전에 변환Kafka Connect (ETL/Stream)Kafka에 저장되거나 Kafka로부터 읽을 때 변환 (중간 처리)즉, APISIX는 앞단에서 처리, Kafka Connect는 뒷단에서 처리합니다.✅ 장단점 비교항목APISIX Lua 변환 Kafka Connect SMT 변환처리 시점요청 수신 시 (HTTP 수신 시 즉시 변환)Ka..
OpenFaaS 함수를 JavaScript(Node.js) 로 작성해서,MongoDB REST Proxy (예: RESTHeart) 를 통해HTTP 요청으로 MongoDB 조회하는 예시.🛠️ OpenFaaS + JavaScript 함수 예시handler.js"use strict"const fetch = require('node-fetch'); // 외부 HTTP 호출용 라이브러리module.exports = async (event, context) => { const MONGO_PROXY_URL = "http://restheart.mongodb.svc.cluster.local:8080/mydb/mycollection"; try { const response = await fet..
📦 OpenFaaS란?OpenFaaS (Functions as a Service) 는 서버리스(Serverless) 애플리케이션을 컨테이너 기반으로 손쉽게 구축하고 배포할 수 있게 해주는 오픈소스 플랫폼입니다."Docker/Kubernetes 위에 서버리스" 를 구현하는 대표적인 솔루션이라고 할 수 있습니다.핵심 키워드:서버리스(Serverless) 아키텍처컨테이너(Container) 기반이벤트 기반 실행 (HTTP, Kafka, Cron 등 트리거 가능)멀티언어 지원 (Python, Java, Node.js, Go, Bash Script 등)자체 호스팅 가능 (완전한 On-Premise 가능)오픈소스 (Apache 2.0 라이선스)🎯 OpenFaaS 주요 특징컨테이너 기반 함수작성한 함수를 컨테이너..
📦 Spring Boot + RESTHeart 연결 샘플✅ 1. 프로젝트 기본 세팅pom.xml org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-webflux com.fasterxml.jackson.core jackson-databind 여기선 WebClient (Spring 5 이상)로 HTTP 호출할 겁니다.✅ 2. application.yml (RESTHeart 서버 설정)restheart: base-url: http://localhost:8..
📦 RESTHeart란?RESTHeart는 MongoDB를 위한 전문 REST API 서버입니다.MongoDB를 바로 HTTP REST API로 사용할 수 있게 만들어줍니다.별도 애플리케이션 코딩 없이, MongoDB를 그대로 API처럼 열어줍니다.완전 프로덕션(운영) 레벨까지 고려해서 만든 고성능 서버입니다.MongoDB를 HTTP REST API로 쉽게 열어주는, 고성능 오픈소스 서버✅ RESTHeart 주요 특징 항목 내용기능MongoDB 데이터베이스 → 자동 REST API 변환지원 APICRUD(Create, Read, Update, Delete) 전부 지원설치Docker, Standalone Jar인증/보안Basic Auth, JWT, OAuth2 지원확장성Custom 플러그인, 비즈니스 로..
MongoDB Source Connector는 대략 3가지 범주로 설정을 나눌 수 있습니다:기본 연결 / 필수 항목고급 옵션 / 스트리밍 관련오류 처리 / 변환 처리(SMT) / 성능 조정범주별로 모든 항목을 설명 + 언제 사용하는지까지 구체적으로 적어볼게요.1. 기본 연결 / 필수 항목항목 필수 설명connector.class✅com.mongodb.kafka.connect.MongoSourceConnector 로 고정tasks.max✅병렬 실행할 태스크 수. 기본 1. 복수 지정시 컬렉션을 샤딩해서 분산 읽기 가능connection.uri✅MongoDB 접속 URI (Authentication, ReplicaSet, TLS 모두 설정 가능)database⭕관찰할 데이터베이스 이름. 생략 가능 (컬렉션 ..
MongoDB에서 Kafka로 보내기 전에, 3단계 과정을 거칠 수 있습니다.필터링 (Filter)MongoDB Change Stream 이벤트 중 필요한 것만 선택 (→ MongoDB 서버단 처리)변환 (Transform)Kafka로 보내기 전에 메시지 구조를 바꾸거나 수정 (→ Kafka Connect SMT)포맷팅 (Formatting)Kafka 메시지의 Key/Value 직렬화 형태 지정 (→ JSON, BSON 등)이 3단계를 조합하면 훨씬 깔끔하고, 목적에 맞는 데이터 스트림을 만들 수 있어요.✋ 1. 필터링 (Filter) - MongoDB 단에서 필요한 데이터만 선택방법MongoDB Source Connector의 pipeline 옵션 사용MongoDB의 Aggregation Pipelin..