Cloudflare 基礎
R2 物件儲存是什麼?零出流量費的 S3 替代方案,備份與圖床的好選擇
R2 物件儲存是什麼?零出流量費的 S3 替代方案,備份與圖床的好選擇
用過雲端儲存服務的人,多半有過這種經驗:存資料的費用便宜得驚人,帳單卻比想像中厚。翻開明細才發現,大頭不是儲存費,而是「出流量費」,也就是資料離開機房、被人下載時計的費用。存進去免費或極便宜,拿出來才跟你算帳,這是傳統雲端儲存的商業模式。
Cloudflare 的 R2 物件儲存直接把這一條砍掉:出流量一律免費。我自己拿它放網站的每日異地備份,也看過很多人拿它當圖床。這一篇講清楚 R2 是什麼、零出流量費為什麼重要、S3 相容 API 怎麼接現有工具,以及實際使用時要注意的幾件事。
你將學到什麼
物件儲存
跟硬碟與資料庫不同的第三種存法。
零出流量費
R2 與傳統雲儲存最大的差異。
S3 相容
rclone、restic 等現成工具直接接。
實務注意
備份與圖床各自的坑與配套。
物件儲存是什麼:第三種存資料的方式
先把「物件儲存」這個詞講清楚。我們熟悉的存法有兩種:檔案系統(硬碟上的資料夾與檔案)與資料庫(結構化的表格)。物件儲存是第三種:每個檔案是一個「物件」,放在叫做值區(bucket)的容器裡,用一把鍵(key,通常長得像路徑)來存取,透過 HTTP API 上傳與下載。
它犧牲了檔案系統的即時修改能力(物件通常整個覆寫,不做局部編輯),換來近乎無限的容量、高耐久性與便宜的單價。備份檔、圖片、影片、日誌、匯出報表這類「寫一次、讀多次、不太改」的資料,物件儲存就是最合適的家。這個領域的始祖與事實標準是 AWS 的 S3,R2 則是 Cloudflare 交出的同類產品。
零出流量費:R2 真正的賣點
雲端儲存的帳單通常由三部分組成:儲存空間、操作次數,以及出流量(egress)。前兩項大家都收,差異不大;真正的分水嶺在第三項。
傳統雲儲存對「資料離開機房」計費,你的檔案越受歡迎、被下載越多次,帳單就越厚,而且這一項最難預估:一次爆紅、一次全量還原、一次搬家,都可能瞬間灌出可觀的流量費。
R2 的定價把出流量這一項直接歸零:資料被讀取、被下載,不論多少,都不計流量費。你付的是儲存空間(按容量與時間)與 API 操作次數(寫入類的 Class A 與讀取類的 Class B 費率不同),兩者也都有免費額度。
具體數字會調整,以官方定價頁為準;但「出流量免費」這個結構性差異,讓帳單從難以預估變成可以估算,這對讀取量大的用途是質變。
S3 相容 API:現成工具改個端點就能用
R2 聰明的地方在於沒有另起爐灶,而是相容 S3 的 API。這代表整個 S3 生態系的工具幾乎都能直接拿來用:同步工具 rclone、備份工具 restic、程式端的 boto3 或各語言的 S3 SDK,只要把端點(endpoint)改成 R2 的網址、換上 R2 的金鑰,就能照常運作,不用學一套新東西。
R2 的端點長這樣:每個帳號一組專屬網址,格式是「帳號 ID 加上 r2.cloudflarestorage.com」。設定工具時有個小坑:官方給你的是一整條含帳號 ID 的完整網址,有些工具的設定欄位卻只要你填其中一段,直接整條貼上會拼出錯誤的主機名稱,而錯誤訊息只會說找不到主機。
貼設定值之前,先看清楚欄位要的是哪一段。
用途一:異地備份
備份的鐵則是至少一份放在異地:主機所在的機房出事,備份不能跟著陪葬。
R2 拿來當異地備份點非常合適,原因有三:儲存單價便宜,平常只進不出幾乎沒有操作費;還原的那一天不管抓多少資料回來,都沒有流量費,不會在最狼狽的時刻收到最厚的帳單;工具端用 rclone 或 restic 排程加密上傳,一晚就能架好。
兩個配套一定要做。第一,備份要加密再上傳,而加密的通關密語要另外保存,弄丟它等於所有舊備份永久報廢。第二,定期做還原演練:真的把備份抓下來、解開來、確認使用者資料都在。沒有還原過的備份只是一個看起來很安心的檔案,檔案大小正常不代表內容完整。
用途二:圖床與靜態資產
第二個典型用途是圖床:部落格的圖片、網站的靜態資產、可下載的檔案。做法是開一個值區、綁上自訂網域(網域要在 Cloudflare 代管),圖片就自動走 Cloudflare 的 CDN,全球訪客就近取得快取。讀取量再大也不會產生流量費,這正是圖床最怕的成本項。
- 公開存取要自己開:值區預設是私有的,要嘛綁自訂網域,要嘛開官方提供的開發網址。正式站建議一律用自訂網域,才吃得到快取與自己的網域名聲。
- 快取要設定:透過自訂網域供檔時,搭配快取規則把圖片的快取時間拉長,命中率才會漂亮。
- 程式端記得帶 User-Agent:Cloudflare 的服務會擋掉某些預設的程式用戶端標頭(例如 Python urllib 的預設值),被擋時回的錯誤訊息容易誤導方向,自己帶一個正常的 User-Agent 就能避開。
什麼時候不選 R2
公平起見也講清楚界線。你的系統如果深度綁定 AWS 生態,例如大量使用 S3 的事件通知去觸發 Lambda、依賴多層儲存分級的自動搬移,或是資料就近要跟 EC2 上的運算放在同一個機房,那留在 S3 通常更順。
R2 最亮眼的場景是「讀取量大、出流量占帳單大頭」與「跨雲備份、不想被單一雲綁死」這兩種;反之,資料只進不出又極少讀取的冷儲存,各家差距就沒那麼大,值得逐項比價,數字一律以各家官方定價頁為準。
延伸學習
寫給升國一的你的筆記術
寫給剛升上國中的你:筆記不是寫給老師看的,是寫給考前的自己看的。18 章 85 課圖文,從「為什麼要寫」講到七科各自怎麼記,附 78 份可以印出來寫的練習單,以及 80 課家長專區與 34 張三年筆記養成路徑圖。沒有閱讀期限,國一買、國三還在。
NT$ 3,599
ChatGPT 很強,但真正讓你下班的是 Google
六小時完整實錄。從「AI 很厲害,為什麼你還是每天加班」這個問題出發,把 Google Workspace 當成真正的工作平台重新設計一次流程 ── Sheets 的資料結構、Drive 與 Docs 的文件流、Gmail 與 Calendar 的通知系統,再用 Apps Script 讓它自己跑起來,最後收斂成一張屬於你自己的 AI 工作能力地圖。
NT$ 4,599

