5秒結論: 覺得超載很正常。Excel主要是在單一應用裡處理表格;進入GitHub和Cloudflare後,版本管理、Build、伺服器、資料庫、全球配送、安全與失敗恢復突然一起出現。這比較不像「技術不好」,而像跳過幾個等級直接進最終迷宮。
1. 我以為Excel下一步是網站,為什麼突然有物流中心
以試算表為主的人進入Web開發,很自然會問:
我不是只想把網站放上線嗎?
HTML還能理解。
然後Git、GitHub、repository、branch、commit、build、deploy、Worker、D1、KV、DNS、CDN、CI/CD一起冒出來。
剛走出新手村,沒有史萊姆,站在前面的是「分散式系統導論」。
混亂有其結構性原因。Excel工作常能在單一軟體內完成;Web服務卻把撰寫、保存、轉換、執行、傳送、記錄拆成不同層。
2. 真正的問題不是太難,而是跳過了幾層
Web開發沒有唯一課程順序,但概念上常會逐層增加:
- 寫檔案
- 用Git保存變更歷史
- 用GitHub保存與協作
- Build
- Deploy
- 執行API
- 接DB
- 自動化
- 失敗重試與恢復
現在靠AI與模板,可以在還沒完全理解1到3之前,就直接跑到7到9。
很方便。
也非常不照顧大腦。
昨天才知道「GitHub是程式碼倉庫」,今天就收到「Workers Builds root」「D1 binding」「KV eventual consistency」。
像學會用冰箱後,隔天被叫去管理食品工廠供應鏈。
3. GitHub是什麼——設計圖倉庫加修改歷史
GitHub的核心是管理Git repository中的檔案與變更。
Web專案可以包含文章、HTML、CSS、JavaScript、設定、測試與腳本。
commit記錄什麼在何時被改動。
因此最簡單的模型是:
GitHub = 設計圖倉庫 + 修改歷史
GitHub Pages可以發布靜態網站,GitHub Actions也能自動進行Build、Test、Deploy。
所以它不只是倉庫。
倉庫裡還附了一座小工廠。
但核心仍是程式碼、協作和變更管理。
4. Cloudflare是什麼——工廠突然連商店、倉庫、配送和保全都包了
Cloudflare可以做:
- 網站配送
- 用Workers執行伺服器邏輯
- Build和Deploy
- 用D1保存SQL資料
- 用KV保存Key-Value資料
- 全球網路配送
- DNS
- 安全控制
- 用Workflows跑可持續的多步驟流程
只稱它為「hosting」已經不太夠。
比較像:
工廠 + 商店 + 倉庫 + 配送中心 + 保全室
而且DB也在同一個園區。
GitHub與Cloudflare有部分重疊,但主業不同。
5. Build是什麼——把設計圖變成成品
Git repository裡的檔案通常還不是完成版網站。
像Astro這類framework會把內容、component、設定與程式碼轉換成可發布的HTML、CSS、JavaScript。
這個轉換就是Build。
Cloudflare Workers Builds能在連接的Git repository收到push後執行build command,再執行deploy command。
所以:
GitHub = 模型盒
Build = 組裝
Deploy = 把成品放到貨架
Build log很長,是因為它是工廠生產日誌。
你只想看網站。
系統卻給你整份製造履歷。
6. D1與KV——都是資料,為什麼要兩種
D1是Cloudflare的serverless SQL database,使用SQLite風格的SQL語意。
可以把它當作正式台帳,有行、列、條件查詢與關聯。
KV是Key-Value storage。
例如:
- site_mode → normal
- feature_x → true
- user_123_theme → dark
比較像巨大字典。
KV適合快速讀取與全球快取,但採eventual consistency。Cloudflare說明,其他地點可能暫時讀到舊值,有時可持續60秒甚至更久。
因此:
D1 = 正式台帳
KV = 高速字典或便利貼牆
「都是資料,不能只留一個嗎?」是人類合理的願望。
分散式系統不一定同意。
7. GitHub和Cloudflare,誰比較會自己跑
看工作類型。
GitHub Actions可依repository事件自動執行Build、Test、Deploy。
Cloudflare Workers可以持續當API運作,Workflows還能保存多步驟狀態,失敗重試、等待並在之後繼續。
比喻來說:
GitHub = 擅長設計、修改、修理的工程師
Cloudflare = 擅長持續執行既定流程的自動工廠
要分析程式碼問題並修改,GitHub一側更自然。
要「一直把流程運到終點,失敗就再試」,Cloudflare更自然。
不是誰比較強,而是職務不同。
8. 大家什麼時候學這些——不是人人都在學校學
GitHub常見於資訊相關課程、研究室與軟體開發工作。
Cloudflare、AWS、GCP、資料庫、CI/CD這類工具,很多人直到真的要發布與運營服務時才學。
非工程師一輩子不碰Cloudflare Workers也很正常。
經濟、會計、業務、人資等職務,長期以Excel為核心工具也很常見。
所以不是「別人全都知道,只有我不知道」。
而是:
你打開了另一個職業的工具箱。
可能前一天還在學邊際效用,後一天開始被eventual consistency追殺。
通常不在同一套課程裡。
9. 結論——不用全背,先知道誰負責什麼
一開始記住這張地圖就夠:
| 名稱 | 一句話 |
|---|---|
| GitHub | 設計圖與歷史 |
| Build | 把原始檔變成成品 |
| Deploy | 把成品放到正式環境 |
| Cloudflare Workers | 伺服器處理 |
| D1 | SQL正式台帳 |
| KV | 高速Key-Value字典 |
| GitHub Actions | GitHub端自動化 |
| Cloudflare Workflows | 有狀態的長流程自動化 |
有這張圖後,錯誤就能先分類成GitHub、Build、Worker或DB問題。
光是分類就能大幅降低噪音。
會超載不是因為理解力不足。
是因為你從一間房間裡的Excel,突然走進整座商場的設備管理室。
你本來只想換燈泡。
現在有人開始解說防火捲門。
參考資料
- GitHub Docs, What is GitHub Pages? https://docs.github.com/en/pages/getting-started-with-github-pages/what-is-github-pages
- GitHub Docs, Understanding GitHub Actions https://docs.github.com/en/actions/get-started/understand-github-actions
- Cloudflare Docs, Workers Builds https://developers.cloudflare.com/workers/ci-cd/builds/
- Cloudflare Docs, Workers Builds Configuration https://developers.cloudflare.com/workers/ci-cd/builds/configuration/
- Cloudflare Docs, D1 https://developers.cloudflare.com/d1/
- Cloudflare Docs, How KV works https://developers.cloudflare.com/kv/concepts/how-kv-works/
- Cloudflare Docs, Workflows https://developers.cloudflare.com/workflows/
