cloudflare-r2

2 개의 포스트

R2 로컬 업로드로 글로벌 (새 탭에서 열림)

Cloudflare는 전 세계 어디에서나 R2 객체 스토리지의 업로드 성능을 극대화할 수 있는 'Local Uploads' 기능을 오픈 베타로 출시했습니다. 이 기능은 클라이언트와 가장 가까운 위치에 데이터를 먼저 기록한 뒤 버킷이 위치한 지역으로 비동기 복제하는 방식을 통해, 지리적 거리로 인한 업로드 지연 시간을 최대 75%까지 단축합니다. 특히 데이터의 즉각적인 접근성과 강력한 일관성을 유지하면서도 글로벌 서비스의 쓰기 성능을 획기적으로 개선한 것이 핵심입니다. ### 전 세계 업로드 성능의 비약적 향상 * **TTLB(Time to Last Byte) 감축**: 내부 테스트 결과, 클라이언트와 버킷의 지역이 다를 때 업로드 완료까지 걸리는 시간이 최대 75% 감소했습니다. * **성능 벤치마크**: 북미 서부에서 아시아 태평양 지역 버킷으로 5MB 크기의 객체를 업로드할 때, 기존 약 2초 소요되던 시간이 Local Uploads 적용 후 약 500ms 수준으로 단축되었습니다. * **글로벌 사용자 경험 최적화**: 전 세계에 분산된 사용자로부터 미디어 콘텐츠를 수집하거나 IoT 장치의 로그 및 텔레메트리 데이터를 전송받는 애플리케이션에 이상적입니다. ### 데이터 처리 메커니즘과 거리 문제 해결 * **기존 방식의 한계**: 기존에는 사용자가 어디에 있든 데이터가 버킷이 지정된 지역의 스토리지까지 물리적으로 이동해야 했으므로, 거리가 멀수록 대기 시간과 불안정성이 증가했습니다. * **로컬 우선 쓰기**: 클라이언트가 버킷과 다른 지역에 있을 경우, R2 게이트웨이는 데이터를 클라이언트 인근 스토리지 인프라에 즉시 기록하고 메타데이터만 버킷 지역에 게시합니다. * **즉각적인 가용성**: 로컬에 쓰기가 완료되는 즉시 객체에 접근할 수 있으며, 배경에서 복제 작업이 진행되는 중에도 데이터 읽기가 가능해 대기 시간이 전혀 없습니다. ### 아키텍처 및 내부 구현 기술 * **Cloudflare Queues 활용**: 복제 작업(Replication Task)을 비동기적으로 처리하기 위해 Cloudflare Queues를 도입했습니다. 이를 통해 실패 시 재시도 처리와 부하 조절(Rate limiting)을 효율적으로 관리합니다. * **원자적 작업 처리**: 메타데이터 저장 시 객체 메타데이터 저장, 보류 중인 복제 키 생성, 복제 작업 마커 생성을 원자적(Atomic)으로 수행하여 데이터 무결성을 보장합니다. * **구성 요소**: 인증과 라우팅을 담당하는 'R2 Gateway Worker', 메타데이터를 관리하는 'Durable Object Metadata Service', 그리고 실제 암호화된 데이터를 저장하는 분산 스토리지 인프라가 협업합니다. ### 사용 환경 및 권장 사항 * **적용 방법**: Cloudflare 대시보드 설정이나 Wrangler 명령(`npx wrangler r2 bucket local-uploads enable [BUCKET]`)을 통해 기존 버킷에서 즉시 활성화할 수 있습니다. * **제한 사항**: 데이터 주권 준수가 필요한 지역 제한(Jurisdiction restriction, 예: EU 전용) 버킷에서는 이 기능을 사용할 수 없습니다. * **활용 팁**: 대시보드의 R2 버킷 메트릭 페이지에서 '지역별 요청 분포'를 확인하여, 읽기/쓰기 요청이 전 세계적으로 분산되어 있다면 Local Uploads를 활성화하는 것이 성능 최적화에 큰 도움이 됩니다.

Moltworker를 소개 (새 탭에서 열림)

Cloudflare는 개인용 AI 에이전트인 Moltbot(현 OpenClaw)을 별도의 전용 하드웨어 없이 클라우드에서 구동할 수 있게 해주는 ‘Moltworker’를 공개했습니다. 이는 Cloudflare Workers의 향상된 Node.js 호환성과 샌드박스(Sandbox) 기술을 활용하여, 사용자가 Mac mini와 같은 물리적 장비를 직접 구매하고 관리해야 하는 번거로움을 해결합니다. 결과적으로 개발자는 Cloudflare의 글로벌 네트워크 위에서 안전하고 확장성 있는 개인 비서 시스템을 구축할 수 있습니다. **Cloudflare Workers의 진화와 Node.js 호환성** * 과거에는 외부 패키지를 실행하기 위해 API를 모킹(Mocking)하거나 memfs 같은 복잡한 라이브러리를 사용해야 했으나, 현재 Workers 런타임은 `node:fs` 등 주요 API를 네이티브로 지원합니다. * 내부 실험 결과, 가장 인기 있는 상위 1,000개 NPM 패키지 중 98.5%가 Workers 환경에서 수정 없이 작동할 정도로 호환성이 개선되었습니다. * 이러한 발전 덕분에 Playwright와 같은 복잡한 브라우저 자동화 프레임워크를 복잡한 설정 없이도 효율적으로 실행하고 유지보수할 수 있게 되었습니다. **Moltworker를 지탱하는 핵심 빌딩 블록** * **Sandboxes**: Cloudflare Containers 기술을 기반으로 하며, 격리된 환경에서 신뢰할 수 없는 코드를 안전하게 실행할 수 있는 SDK를 제공합니다. * **Browser Rendering**: 헤드리스 브라우저 인스턴스를 프로그래밍 방식으로 제어하여 AI 에이전트가 웹 사이트와 상호작용할 수 있도록 돕습니다. * **R2 Storage**: 에이전트의 영속적인 데이터 저장을 위해 객체 스토리지인 R2를 연동하여 상태를 유지합니다. * **AI Gateway**: Anthropic 등 다양한 AI 공급자와의 통신을 중계하며, 통합 빌링(Unified Billing)을 통해 개별 API 키 관리 없이도 서비스를 이용할 수 있게 합니다. **Moltworker의 아키텍처 및 보안 운영** * Moltworker는 진입점 역할을 하는 Worker가 API 라우터 및 프록시로 동작하며, 모든 접근은 Cloudflare Access를 통해 보안 인증을 거칩니다. * AI Gateway를 사용하면 환경 변수(`ANTHROPIC_BASE_URL`) 수정만으로 AI 모델을 연결할 수 있어 코드 변경이 불필요하며, 상세한 비용 분석과 로그 확인이 가능합니다. * 모델 오류가 발생할 경우를 대비한 폴백(Fallback) 설정이 가능하여, 특정 서비스 장애 시에도 에이전트의 안정성을 보장할 수 있습니다. 개인용 AI 에이전트를 운영하고 싶지만 로컬 서버의 소음, 전력 소비, 관리 부담이 걱정되는 사용자에게 Moltworker는 훌륭한 대안입니다. Cloudflare의 개발자 플랫폼을 활용하면 전용 하드웨어 없이도 강력한 성능과 높은 보안 수준을 갖춘 개인 맞춤형 AI 환경을 즉시 구축할 수 있습니다.