TECH 으로 돌아가기
TECH HACKER NEWS 오늘 6분 읽기 24 READS

클라우드플레어 워커 위에 올린 헬프데스크, ResolveHQ가 던지는 질문

클라우드플레어 워커 위에 올린 헬프데스크, ResolveHQ가 던지는 질문
SOURCE IMAGE · HACKER NEWS

소규모 지원팀을 위한 공유 인박스형 헬프데스크는 이미 여러 상용 서비스가 자리 잡은 영역이다. 그런데 최근 공개된 오픈소스 프로젝트 ResolveHQ는 접근 방식이 조금 다르다. 별도의 애플리케이션 서버나 관리형 데이터베이스를 두는 대신, 클라우드플레어(Cloudflare)의 엣지 인프라만으로 헬프데스크 전체를 구성한다. 개발자는 이 소프트웨어를 자신의 클라우드플레어 계정에 직접 배포해 셀프호스팅으로 운영한다. 티켓과 고객 데이터의 소유권을 서비스 제공사가 아니라 운영자 본인이 쥐는 구조라는 점이 이 프로젝트의 출발점이다.

하나의 워커에 모든 것을 담다

구조적으로 가장 눈에 띄는 특징은 애플리케이션 전체가 단일 클라우드플레어 워커(Worker)로 동작한다는 점이다. 웹 프레임워크 Hono가 REST API와 빌드된 React 애플리케이션을 동시에 서빙하고, 데이터는 역할별로 클라우드플레어의 서로 다른 제품에 나뉘어 저장된다. 티켓과 고객 정보는 D1에, 첨부 파일은 R2 오브젝트 스토리지에 들어가며, 들어오고 나가는 메일 작업은 Queues가 큐잉해 처리한다. 수신 메일은 클라우드플레어 이메일 라우팅이 워커로 전달하고, 발신 메일은 외부 서비스인 Resend를 통해 나간다.

이 구성에서 데이터 경계는 비교적 명확하다. 티켓과 첨부 파일은 운영자의 클라우드플레어 계정 안에 머무르지만, 발신 이메일의 본문은 Resend를 거쳐 나간다. 즉 완전한 자체 폐쇄망은 아니며, 발신 경로에는 외부 의존성이 하나 남는다. 데이터 주권을 이유로 셀프호스팅을 택하는 팀이라면 이 지점을 감안해 정책을 세울 필요가 있다.

무료 요금제로 시작할 수 있지만, 조건이 붙는다

프로젝트 측은 소규모 배포라면 클라우드플레어 무료 요금제 범위 안에서 운영이 가능하다고 설명한다. 다만 이는 워커, D1, R2, Queues, Cron Triggers, 이메일 라우팅 각각의 현재 사용량 한도를 넘지 않는다는 전제 위에서다. 특히 인증 처리나 메일 파싱처럼 CPU를 많이 쓰는 작업은 유료 워커 플랜(Workers Paid)이 필요할 수 있어, 실제 부하로 벤치마크를 해보라는 단서가 붙는다. Queues는 무료 플랜에서도 쓸 수 있지만, R2는 계정 활성화와 별도의 결제 설정이 필요하고 Resend는 자체 발신 한도를 따른다.

요약하면 "무료로 돌아간다"는 말은 조건부다. 트래픽이 적고 첨부 용량이 크지 않은 팀에는 사실상 비용 없이 운영할 여지가 있지만, 티켓량이 늘거나 대용량 첨부가 오가기 시작하면 여러 제품의 한도를 개별적으로 넘길 수 있다. 단일 요금제가 아니라 여러 클라우드플레어 서비스의 한도를 조합해 관리해야 한다는 점은 운영 복잡도로 되돌아온다.

배포와 사용 경험

도입 절차는 저장소의 "Deploy to Cloudflare" 버튼으로 시작하도록 설계돼 있다. 배포가 끝나면 생성된 URL에 접속해 소유자(owner) 계정으로 가입하고, 이때 선택적으로 입력한 지원용 이메일 주소가 기본 인박스가 된다. 이후 클라우드플레어 대시보드에서 해당 주소로 온 메일을 배포된 워커로 보내는 이메일 라우팅 규칙을 추가하고, 테스트 메일을 보내 인박스 도착을 확인하는 흐름이다. 로컬 개발 시에는 Vite 앱이 5173 포트에서 뜨고 /api 요청을 8787 포트의 Wrangler로 프록시한다.

사용자 경험 측면에서는 협업 도구에서 익숙한 요소들을 차용했다. 슬랙을 연상시키는 짙은 자주색(aubergine) 사이드바, 자체 호스팅한 Lato 서체, Lucide 아이콘, Radix UI 프리미티브로 화면을 구성하고, 라이트·다크 테마와 상태 색상을 지원한다. 모바일에서는 하단 내비게이션과 키보드로 접근 가능한 작업공간 드로어를 두고, 티켓 목록의 열이 화면에 맞춰 제목 가독성을 유지하도록 조정된다. Cmd/Ctrl+K 단축키로 페이지를 빠르게 이동하는 등, 지원 담당자가 하루 종일 붙어 있는 도구에 필요한 조작성을 신경 쓴 흔적이 보인다.

한국의 실무 관점에서 ResolveHQ는 두 가지 성격을 동시에 가진다. 하나는 서버 관리 부담 없이 엣지에서 헬프데스크를 굴려보려는 소규모 팀을 위한 실용적 선택지이고, 다른 하나는 워커·D1·R2·Queues·이메일 라우팅을 한데 엮은 클라우드플레어 풀스택 애플리케이션의 실제 참고 사례다. 다만 발신 메일의 외부 경유, 여러 제품에 걸친 한도 관리, CPU 집약 작업의 유료화 가능성은 도입 전에 반드시 저울질해야 할 지점이다. 셀프호스팅으로 데이터를 손안에 둔다는 이점은 곧 인프라 운영 책임을 스스로 진다는 뜻이기도 하다.

SOURCE · HACKER NEWS
원문 전체 보기 → https://github.com/mirza-rizvi/ResolveHQ
SHARE
NEXT · CHOOSE

변화를 읽었다면,
내가 만들 수익 구조를 고릅니다.

정보를 더 모으는 데서 멈추지 않고, 광고·외주·판매·중개·구독 중 내 상황에 맞는 출발점을 정해보세요.

21가지 수익 구조 살펴보기
처리 중...