본문 바로가기

Queue3

728x90
FastAPI + DuckDB로 만드는 가볍고 유연한 Webhook 큐잉 처리 시스템 DuckDB 기반 Webhook Gateway 구성과 Prometheus/Grafana 연계 모니터링을 포함한 종합적인 구현입니다.시스템 구성도 및 데이터 흐름┌─────────────────┐ ┌──────────────────┐ ┌────────────────────┐ ┌───────────┐│ External APIs │────▶│ Webhook Gateway │────▶│ Internal Processor │────▶│ 내부 시스템 │└─────────────────┘ │ (FastAPI) │ └────────────────────┘ └───────────┘ │ │.. 2025. 7. 5.
RabbitMQ 이용한 서버 상태 수집 및 이벤트 기반 워크플로우(n8n) 설계 리눅스 서버의 상태 정보를 수집하여 RabbitMQ로 전송하는 방법에는 크게 두 가지가 있다.Python을 사용한 스크립트 방식RabbitMQ 클라이언트 도구를 활용한 방식 (e.g., pika 라이브러리 또는 rabbitmqadmin)아래에서 각각의 방법을 설명하겠다.1. Python을 이용한 상태 정보 수집 및 RabbitMQ 전송Python을 활용하면 커스텀하게 원하는 정보를 수집하고 RabbitMQ로 전송할 수 있다.(1) 필요한 패키지 설치먼저 pika 라이브러리를 설치한다.pip install pika psutil(2) 서버 상태 정보 수집 및 전송 코드아래는 psutil을 활용하여 CPU, 메모리, 디스크, 네트워크 등의 상태 정보를 수집한 후 RabbitMQ에 전송하는 Python 코드이다.. 2025. 4. 5.
Docker 환경 DNS 캐시(dnsmasq) 구현으로 성능 최적화 및 모니터링 Docker 환경에서 컨테이너들이 사용하는 DNS 서버를 별도의 컨테이너로 구성하고, 캐시 기능을 포함하여 네트워크 성능을 최적화할 수 있습니다. dnsmasq를 Docker 컨테이너로 실행하여 DNS 캐시 서버를 구현하는 방법입니다.1. 목표별도의 DNS 서버 구성: Docker 컨테이너가 공통적으로 사용할 수 있는 DNS 서버 구축.성능 향상: DNS 쿼리 결과를 캐싱하여 반복적인 요청 처리 속도 향상.관리 용이성: 모든 컨테이너가 동일한 DNS 캐시 서버를 사용하도록 설정.2. dnsmasq Docker 컨테이너 생성DNS 캐시 서버로 사용할 dnsmasq를 Docker 컨테이너에서 실행합니다.2.1 Dockerfile 작성Docker 이미지를 생성하기 위해 아래와 같이 Dockerfile을 작성합.. 2025. 1. 22.
728x90
728x90