아카이브사이트맵
© 2026 Rayon. All rights reserved.
DevDay
아티클랭킹스페이스채용
뱅크샐러드 favicon뱅크샐러드

뱅크샐러드, 외부 링크 관제 봇으로 매출 손실 막다!

by DD
2020-03-13
6년 전
조회수 14

제휴사 페이지 장애로 인한 매출 손실 및 사용자 경험 저하 문제를 해결하고자 함

Puppeteer를 활용하여 Headless Browser 기반의 URL Checker를 개발, 이미지 비교 방식으로 장애 감지

GitHub Actions에서 Kubernetes CronJob으로 운영 환경을 변경하여 에러 발생률 0% 달성

Puppeteer 기반 장애 감지 시스템

Puppeteer를 사용하여 제휴사 페이지를 주기적으로 스크린샷하고, 이전 스크린샷과 비교하여 장애 여부를 판단한다. 구체적으로 Resemble.js를 활용하여 이미지 유사도를 측정하고, 50% 이상 차이가 발생하면 장애로 간주한다. 따라서 페이지 변경 감지를 통해 장애 발생 시점을 빠르게 파악한다.

GitHub Actions에서 Kubernetes CronJob으로의 전환

초기에는 GitHub Actions를 사용하여 CronJob을 구성했지만, ERR_CONNECTION_CLOSED, ERR_CONNECTION_TIMED_OUT 에러가 빈번하게 발생했다. 으로 런너를 변경했으나, 근본적인 해결책이 되지 못했다. 따라서 으로 전환하여 및 을 구축했다.

EC2 환경
Kubernetes CronJob
서버 자원 할당량 증가
안정적인 운영 환경

Playwright 도입을 통한 확장성 확보

현재 사용 중인 Puppeteer는 Chromium 기반 브라우저만 지원하여, iOS 환경에서의 제휴사 페이지 검증에 한계가 있다. Playwright를 도입하여 Webkit 브라우저를 지원함으로써, iOS 사용자 환경까지 커버할 예정이다. 결과적으로 다양한 환경에서의 서비스 안정성을 확보할 수 있다.

매출 손실을 줄여주는 외부링크 관제 Bot, 'URL Checker' 개발기
중급
아키텍처
Puppeteer
Google Sheets API
AWS S3
Resemble.js
GitHub Actions
Kubernetes
Playwright
JavaScript
Frontend
DevOps
원문 읽기
원문 읽기

관련 추천 글

GitHub Actions, 자가 호스팅에도 요금 부과?

해커뉴스 로고

FE Ops 6개월, 프론트엔드와 데이터 도메인 사이에서의 성장기록

벨로그 로고

Claude 플랫폼, API 키 없이 안전하게 접근하세요!

클로드 로고

CI/CD 병목 해소, N3R + ARC로 안드로이드 빌드 최적화

네이버 D2 로고

GitHub 대안, 무엇을 선택해야 할까?

테오 로고

Claude Code가 뽑은 최고의 기술 스택!

테오 로고
뱅크샐러드 favicon뱅크샐러드
중급
아키텍처
Puppeteer
Google Sheets API
AWS S3
Resemble.js
GitHub Actions
Kubernetes
Playwright
JavaScript
Frontend
DevOps

관련 추천 글

GitHub Actions, 자가 호스팅에도 요금 부과?

해커뉴스 로고

FE Ops 6개월, 프론트엔드와 데이터 도메인 사이에서의 성장기록

벨로그 로고

Claude 플랫폼, API 키 없이 안전하게 접근하세요!

클로드 로고

댓글 0

첫 번째 댓글을 남겨보세요!