Wait4X - 서비스가 준비될 때까지 기다려주는 경량 도구

18 hours ago 8

  • 강력하고 의존성 없는 크로스플랫폼 서비스 대기 툴
  • TCP/HTTP/DNS를 지원하며, Redis/MySQL/Postgres/RabbitMQ 등의 서비스를 통합
  • 병령 체크, 역방향 체크, 지수 백오프 등을 지원하며 체크 성공후 특정 명령 실행 가능
  • 다양한 프로토콜 및 서비스를 지원하며 다음과 같은 작업에 유용
    • CI/CD 파이프라인 - 테스트 실행 전에 종속성이 준비되었는지 확인
    • 컨테이너 오케스트레이션 - 애플리케이션 시작 전에 서비스 상태 확인
    • 배포 프로세스 - 시스템이 준비되었는지 검증 후 배포 진행
    • 애플리케이션 초기화 - 외부 서비스의 가용성을 확인
    • 로컬 개발 - 로컬 서비스의 준비 상태 간편하게 확인

주요 기능

  • 다중 프로토콜 지원 - TCP, HTTP, DNS
  • 서비스 통합 : Redis, MySQL, PostgreSQL, MongoDB, RabbitMQ, InfluxDB, Temporal 지원
  • 역방향 체크 : 비어 있는 포트 또는 준비되지 않은 서비스 찾기 가능
  • 병렬 체크 : 여러 서비스를 동시에 검사 가능
  • 지수 백오프 (Exponential Backoff) : 신뢰성 향상을 위해 재시도 시 지연 시간 증가
  • CI/CD 통합 : 자동화된 워크플로우에 적합
  • 크로스 플랫폼 : Linux, macOS, Windows에서 단일 바이너리 지원
  • Go 패키지 지원 : Go 애플리케이션에 직접 임포트 가능
  • 명령 실행 : 체크 성공 후 명령 실행 가능

Read Entire Article