Cloudflare Workers 를 사용하면 서버를 관리하지 않고도 사용자와 가까운 엣지에서 백엔드 코드를 실행할 수 있습니다. API의 경우 거의 0에 가까운 콜드 스타트, 글로벌 분산, 긴밀하게 통합된 스토리지의 조합 덕분에 Workers는 2026년에 매력적인 플랫폼입니다. 이 가이드는 Cloudflare Workers API가 어떻게 구성되는지, 그리고 전통적인 백엔드와 무엇이 다른지 설명합니다.

요약(TL;DR)

  • Cloudflare Workers는 코드를 엣지의 Cloudflare 글로벌 네트워크에서 실행하므로, 요청이 사용자와 가까운 곳에서 거의 0에 가까운 콜드 스타트로 처리됩니다
  • Worker는 들어오는 요청을 fetch 핸들러로 처리합니다. 메서드와 경로로 라우팅하고 표준 Response 객체를 반환합니다
  • Workers는 스토리지에 직접 바인딩됩니다. D1(SQLite), KV(키-값), R2(오브젝트 스토리지), Queues, Durable Objects입니다
  • Workers는 저지연이면서 글로벌하게 분산된 API에 적합합니다. 완전한 서버 환경이 아니라 가벼운 런타임을 사용하므로 구축 방식이 달라집니다

Workers가 다른 점

전통적인 API는 단일 리전의 서버(또는 컨테이너)에서 실행됩니다. 반면 Cloudflare Workers는 컨테이너나 가상 머신이 아니라 가벼운 V8 isolates를 사용하여 Cloudflare의 글로벌 네트워크에서 실행됩니다. 실무적인 결과는 다음과 같습니다.

  • 거의 0에 가까운 콜드 스타트. isolates는 거의 즉시 시작되어, 일부 서버리스 플랫폼에서 흔한 콜드 스타트 지연을 피합니다.
  • 기본적으로 글로벌. 코드가 Cloudflare 네트워크 전반에서 각 사용자와 가까운 곳에서 실행되어, 여러 리전에 배포하지 않고도 지연을 줄입니다.
  • 관리할 서버 없음. 프로비저닝, 패치, 스케일링이 필요 없으며 플랫폼이 이를 처리합니다.
  • 집중된 런타임. Workers는 완전한 서버 OS가 아니라 웹 표준 API(Fetch, Request/Response, Web Crypto, streams)를 제공하며, 많은 Node API를 위한 Node.js 호환 레이어를 갖추고 있습니다. 웹 표준을 중심으로 설계합니다.

Cloudflare Workers API의 형태

핵심적으로 Worker는 각 요청을 받는 핸들러를 export합니다.

1export default {
2  async fetch(request, env, ctx) {
3    const url = new URL(request.url);
4    if (request.method === "GET" && url.pathname === "/api/health") {
5      return Response.json({ status: "ok" });
6    }
7    return new Response("Not found", { status: 404 });
8  }
9};

여기서부터 다음을 구성합니다.

  • 라우팅 을 HTTP 메서드와 경로 기준으로 처리합니다(소규모 API는 수동으로, 대규모는 가벼운 라우터로).
  • 요청 파싱 을 JSON, 폼 데이터, 쿼리 파라미터를 위한 표준 Request 메서드로 수행합니다.
  • 응답Response.json() 을 포함한 표준 Response 객체로 반환합니다.
  • 바인딩env 인자에서 사용하여 스토리지와 기타 리소스에 접근합니다.

바인딩으로 스토리지 연결하기

Workers API의 진정한 강점은 데이터에 얼마나 직접적으로 바인딩되는가에 있습니다.

  • D1 은 서버리스 SQLite 데이터베이스로, 관계형 데이터에 이상적입니다. Cloudflare D1 을 참고하세요.
  • KV 는 구성이나 캐싱 같은 빠르고 글로벌하게 분산된 키-값 데이터에 사용합니다.
  • R2 는 오브젝트 스토리지(파일, 이미지)에 사용하며 이그레스 요금이 없습니다.
  • Queues 는 비동기 백그라운드 처리에 사용합니다.
  • Durable Objects 는 필요한 곳에서의 상태 기반 조정과 일관성을 위한 것입니다.

바인딩은 구성 파일에서 선언되어 env 에 나타나므로, 일반적인 방식으로 연결 문자열이나 자격 증명을 관리하지 않고도 코드에서 직접 호출합니다.

개발과 배포

  • Cloudflare의 CLI인 Wrangler 가 로컬 개발, 구성, 시크릿, 배포를 담당합니다.
  • 프로덕션을 반영하는 로컬 런타임에 대해 개발한 뒤, 단일 명령으로 글로벌하게 배포합니다.
  • 시크릿은 코드에 커밋하지 않고 Wrangler를 통해 관리합니다.

Workers가 올바른 선택인 경우

Workers는 저지연이면서 글로벌하게 분산된 API, webhook, 엣지 미들웨어, 그리고 사용자와 가까운 곳에서 실행되어 이점을 얻는 서비스에 아주 잘 맞습니다. 반면 장시간 실행되는 프로세스, 요청 모델을 넘어서는 무거운 CPU 집약 연산, 또는 플랫폼이 대상으로 하지 않는 특정 언어 런타임이 필요한 워크로드에는 덜 적합합니다. 더 폭넓은 컴퓨트 비교는 Cloudflare Workers 대 AWS Lambda 를 참고하세요.

실제 사례로, AI Code Review API 는 Cloudflare Workers 위에 구축되어 콜드 스타트 없이 전 세계 엣지에서 실행되며 빠르고 구조화된 결과를 반환합니다. 바로 Workers가 뛰어난 저지연 API의 전형입니다.

핵심 요약

  • Cloudflare Workers API는 관리할 서버 없이, 거의 0에 가까운 콜드 스타트와 글로벌 분산으로 엣지에서 실행됩니다.
  • Worker는 요청을 fetch 핸들러로 처리합니다. 메서드와 경로로 라우팅하고 표준 Response 객체를 반환합니다.
  • 바인딩은 API를 D1, KV, R2, Queues, Durable Objects에 직접 연결합니다.
  • Workers는 저지연이면서 글로벌하게 분산된 API에 적합합니다. 집중된 웹 표준 런타임이 구축 방식을 형성합니다.

전문가와 함께 엣지 API를 구축하세요

엣지를 잘 활용하는 서버리스 API(라우팅, 스토리지 바인딩, 웹 표준 런타임)를 설계하는 데는 플랫폼 경험이 도움이 됩니다. Cloudflare 위에 구축된 예시는 Mecanik의 제품 및 도구 를 살펴보세요. 또한 Cloudflare Pages 대 Workers 비교는 프로젝트에 적합한 Cloudflare 서비스를 고르는 데 도움이 됩니다.

자주 묻는 질문(FAQ)

Cloudflare Workers API란 무엇인가요? 전통적인 서버가 아니라 Cloudflare의 글로벌 엣지 네트워크에서 코드로 실행되는 백엔드 API입니다. Worker는 fetch 핸들러로 HTTP 요청을 처리하고 D1, KV, R2 같은 스토리지에 직접 연결할 수 있으며, 거의 0에 가까운 콜드 스타트로 사용자와 가까운 곳에서 요청을 처리합니다.

Cloudflare Workers에 콜드 스타트가 있나요? 컨테이너나 가상 머신을 띄우는 대신 거의 즉시 시작되는 가벼운 V8 isolates에서 실행되므로 콜드 스타트가 거의 0입니다. 이는 지연에 민감한 API에서 Workers의 주요 장점 중 하나입니다.

Cloudflare Workers로 데이터베이스를 사용할 수 있나요? 네. Workers는 관계형 데이터를 위한 D1(서버리스 SQLite), 키-값 데이터를 위한 KV, 오브젝트 스토리지를 위한 R2, 그리고 Queues와 Durable Objects에 직접 바인딩됩니다. 바인딩은 env 인자에 나타나므로 코드에서 직접 접근합니다.

Cloudflare Workers는 어떤 언어를 사용하나요? 주로 JavaScript와 TypeScript이며, 다른 언어를 위해서는 WebAssembly를 사용합니다. Workers는 웹 표준 API(Fetch, Request/Response, Web Crypto)를 제공하고 많은 Node API를 위한 Node.js 호환 레이어를 갖추므로, 완전한 서버 런타임이 아니라 웹 표준을 중심으로 구축합니다.

API에 Cloudflare Workers를 언제 사용해야 하나요? 즉각적인 스케일링으로 사용자와 가까운 곳에서 실행되어 이점을 얻는 저지연이면서 글로벌하게 분산된 API, webhook, 엣지 미들웨어에 Workers를 사용하세요. 장시간 실행되는 프로세스나 요청 모델을 벗어난 무거운 CPU 집약 작업에는 덜 적합합니다.