← 返回博客
網頁開發 12 分鐘閱讀

架構轉型:邊緣計算如何重塑現代網頁應用

從集中式伺服器到分散式邊緣網路,網頁架構正在經歷數十年來最大的轉型。探索邊緣計算如何實現亞10毫秒的回應時間、轉化用戶體驗,並為開發者構建下一代網頁應用開創新可能。

S

S.C.G.A. 團隊

2026年3月27日

架構轉型:邊緣計算如何重塑現代網頁應用

平均網頁載入時間為 2.5 秒。但用戶會在超過 3 秒後放棄瀏覽網站。「尚可」與「卓越」之間的差距以毫秒計算——而邊緣計算正在永遠縮小這個差距。

集中式運算的問題

在網際網路歷史的大部分時期,網頁應用遵循一個簡單的模式:香港用戶發送請求到維吉尼亞州的伺服器,等待 200-300 毫秒的來回延遲,然後收到回應。這種集中式架構在基礎設施昂貴、網路主要是唯讀內容的時代是合理的。但我們已不再處於那個時代。

現代網頁應用是互動的、即時的、全球化的。聖保羅的用戶不應該只因為地理距離就比紐約的用戶等待更長時間。然而,傳統雲端架構正是創造了這種不平等。

數據令人震驚。光在光纖電纜中以約每秒 200,000 公里的速度傳播。聖保羅與典型美國東海岸數據中心之間的物理距離約為 7,500 公里。這是理論上最小 75 毫秒的延遲——還未計入網路擁塞、路由效率低下或伺服器處理時間。在實踐中,用戶通常會經歷 200-400 毫秒的簡單 API 呼叫延遲。

對於靜態內容,CDN 在數十年前就解決了這個問題。但動態內容——個人化頁面、已驗證請求、即時數據——仍然需要來回.origin 伺服器。邊緣計算終於解決了動態內容的挑戰。

什麼是邊緣計算?

邊緣計算是指部署在網路「邊緣」——物理上靠近最終用戶——的運算基礎設施,而非集中式雲端數據中心。「邊緣」可以指多種事物:

CDN 邊緣節點是最常見的邊緣基礎設施形式。Cloudflare、Fastly 和 Akamai 等公司在全球運營數百個數據中心網路。當您透過 CDN 存取內容時,您已經連接到邊緣節點——只是從歷史上看,CDN 只緩存靜態內容。

邊緣數據中心是部署在城市區域的更小、更多的設施。邊緣基礎設施不是少數大型數據中心,而是將運算分散到數十個或數百個位置。AWS 有 Local Zones 和 Wavelength,Azure 有 Edge Zones,Google 有 Distributed Cloud。

瀏覽器端運算代表最外層的邊緣。WebAssembly 和客戶端 JavaScript 現在可以執行重要的運算,有效地将瀏覽器轉變為分散式運算節點。

現代邊緣計算的關鍵創新是這些邊緣節點現在可以執行任意程式碼——不僅僅是提供緩存的內容。Cloudflare Workers、Vercel Edge Functions 和 Deno Deploy 允許開發者同時部署伺服器端邏輯到數百個位置。

架構轉型

從單體到分散式

傳統網頁架構遵循分層模型:網頁伺服器、應用程式伺服器和資料庫——每個都獨立擴展,但總是在集中位置。這種「三層架構」為業界服務了二十年,但創造了固有的瓶頸。

現代邊緣原生架構以不同方式分散這些元件。不是單一的整體應用程式伺服器處理所有業務邏輯,而是由邊緣函數在邊緣處理請求。資料庫查詢可能仍會送往中心位置,但智慧的緩存、數據複製和 CQRS(命令查詢責任分離)模式最大限度地減少了來回延遲。

結果是一種看起來更像神經系統而非樹狀的架構——多個處理節點,每個在本地處理請求,僅在必要時進行集中協調。

JAMstack 的興起

JAMstack——JavaScript、API 和 Markup——已成為邊緣原生網頁開發的首選架構模式。核心原則很簡單:在構建時盡可能預先生成內容,從 CDN 提供服務,並使用 JavaScript 和 API 處理動態行為。

這種架構與邊緣計算完美契合,因為預先生成的靜態內容可以在全球範圍內的 CDN 邊緣節點緩存。當用戶請求 JAMstack 網站時,他們從最近的邊緣節點獲取服務——通常無需接觸.origin 伺服器。「標記」已經存在,分布在整個網路中。

現代 JAMstack 遠不止靜態 HTML。Next.js、Nuxt 和 Astro 等工具支援:

**在邊緣進行伺服器端渲染(SSR)。**與其在單一.origin 伺服器上渲染頁面,SSR 現在可以在邊緣節點上進行。在 Vercel 上托管的 Next.js 網站上,新加坡用戶在他們附近的邊緣位置渲染頁面,而非在美國數據中心。

**增量靜態再生(ISR)。**頁面在構建時預先生成,但在內容變更時可按需重新生成。這提供了靜態內容的效能和動態內容的新鮮度。

**按需構建器。**複雜頁面只在首次請求時生成,然後在全球緩存。後續訪客從最近的邊緣節點獲取緩存版本。

邊緣的資料庫

對完全分散式網頁架構的傳統反對意見是資料庫。如何在邊緣位置分散式部署關聯式資料庫,同時保持一致性?答案正在演變。

全球複製的資料庫,如 PlanetScale(MySQL 相容)、CockroachDB 和 Turso(libSQL),提供在多個地理區域複製數據的資料庫集群。讀取可以在靠近用戶的任何副本進行;寫入被路由到適當的主節點或次節點。

邊緣相容資料庫,如 Fauna、Supabase(及其邊緣函數)和 Cloudflare 的 D1,從設計上就考慮了分散式存取模式。這些資料庫通常犧牲嚴格的 ACID 合規性以換取全球可用性和低延遲讀取——對於大多數網頁應用來說是合適的取捨。

具有邊緣存取緩存的緩存模式(如邊緣的 Redis、Cloudflare KV)為常見存取數據提供超快速讀取存取。邊緣的應用程式邏輯可以以微秒為單位提供緩存回應,仅在必要時才回退到資料庫查詢。

真實世界的邊緣計算模式

無延遲的個人化

邊緣計算最引人注目的用例之一是個人化。歷史上,提供個人化內容需要資料庫查詢來獲取用戶數據、模板來渲染內容,以及向用戶回應——所有這些都增加了延遲。

邊緣計算實現了一種新模式。當用戶進行身份驗證時,他們的個人資料可以存儲在邊緣可訪問的存儲中(如 Cloudflare KV 或 Workers KV)。後續請求可以在邊緣個人化,無需任何.origin 聯繫,延遲在 10 毫秒以內。

新聞網站可以從邊緣位置提供個人化首頁,包含用戶首選部分和閱讀歷史——無需.origin 來回延遲電子商務平台可以顯示個人化推薦,而無需傳統的 100-200 毫秒個人化延遲。

大規模 A/B 測試

A/B 測試傳統上需要客戶端 JavaScript(緩慢、有閃爍)或每個測試位置的伺服器端基礎設施。邊緣計算實現了一種更清晰的方法:邊緣 workers 可以將用戶分配到測試組並提供變體內容,全部在邊緣進行,沒有可察覺的延遲影響。

Cloudflare 的實現允許在邊緣進行分割測試,支援地理和設備定位。Vercel 的 Edge Middleware 提供類似功能,能夠在請求和回應到達.origin 伺服器之前在邊緣修改它們。

身份驗證與安全

邊緣網路越來越多地成為網頁應用的第一道防線。Cloudflare 的 Workers 可以檢查請求、驗證 JWT 令牌、強制速率限制,並阻止惡意流量——所有這些都在請求到達.origin 基礎設施之前完成。

這對於 DDoS 防護特別強大。惡意流量不會消耗到.origin 伺服器的帶寬,邊緣節點在網路邊界吸收和偏轉攻擊。.origin 伺服器只看到合法流量。

在邊緣進行的 JWT 驗證是身份驗證模式的遊戲改變者。邊緣函數可以在本地以微秒為單位驗證加密簽名,而非在應用程式伺服器上進行驗證(需要資料庫查詢或緩存檢查)。

API 閘道器模式

邊緣原生 API 閘道器在邊緣提供路由、身份驗證和轉換。不是將所有 API 流量路由到單一區域的集中式 API 閘道器,邊緣 API 閘道器可以:

  • 將請求路由到最近的可用後端服務
  • 聚合來自多個後端服務的數據並返回統一回應
  • 無需後端代碼更改即可轉換請求/回應格式
  • 在靠近用戶的地方強制執行身份驗證和速率限制

開發者體驗

現代邊緣計算最值得注意的方面可能是它如何改善了開發者體驗。無伺服器邊緣函數幾乎完全抽象化了基礎設施的考量。

部署簡便性

部署到邊緣網路非常簡單。Cloudflare Worker 可以用單一命令發布:

wrangler deploy

Vercel Edge Function 只是一個 TypeScript 函數:

export const config = { runtime: 'edge' };

export default async function handler(req: Request) {
  return new Response(`Hello from the edge!`);
}

這種簡便性具有轉化性。開發者可以部署全球分散式、低延遲的代碼,而無需了解底層基礎設施。平台自動處理複製、故障轉移和擴展。

冷啟動與暖啟動

對無伺服器邊緣函數的一個擔憂是冷啟動——當函數首次調用時的延遲。Cloudflare Workers 用 V8 isolates 而非基於容器的方決解決了這個問題。啟動 V8 isolate 需要微秒,而非傳統無伺服器容器的 100-500 毫秒。

Cloudflare 聲稱 Workers 的 p99 冷啟動時間低於 100 毫秒——快到用戶通常不會注意到。Vercel 的 Edge Functions 使用類似的基於 isolates 的方法來實現可比的效能。

測試與調試

測試邊緣函數需要新工具,但已變得令人驚訝地成熟。Cloudflare 的 wrangler dev 啟動了一個與生產環境非常相似的本地邊緣環境。Miniflare 提供完整的 Workers 運行時,用於具有 KV、DO(Durable Objects)和 R2 相容性的本地測試。

Vercel 的測試工具允許使用模擬的運行時上下文對 Edge Functions 進行單元測試。兩個平台都提供請求日誌、異常追蹤和效能配置文件等調試工具。

挑戰與取捨

邊緣計算並非萬能解決方案。有幾個挑戰需要仔細考慮。

無狀態約束

大多數邊緣函數設計為無狀態——它們不應該依賴本地文件系統訪問、內存狀態或非分散式資源。這種約束顯著影響應用程式設計。

Durable Objects(Cloudflare 的有狀態邊緣計算原語)解決了一些有狀態運算需求,但引入了它們自己的複雜性和成本模型。了解何時使用無狀態邊緣函數與有狀態 Durable Objects 是關鍵的架構決策。

廠商鎖定

邊緣計算平台是高度專有的。Cloudflare Workers 使用自己的 API 和運行時。Vercel Edge Functions 是 Vercel 特定的。編寫可移植的邊緣代碼需要仔細的抽象或接受平台承諾。

新興的 Web Workers 標準提供了一些可移植性,但邊緣特定 API(KV、Durable Objects、邊緣資料庫)尚未標準化。組織必須權衡平台特定功能的生產力優勢與長期靈活性。

調試複雜性

分散式系統本質上比集中式系統更難調試。當請求在一個區域由邊緣函數處理、在另一個區域緩存並在第三個區域失敗時,了解發生的事情需要複雜的分散式追蹤。

Cloudflare 的內建日誌記錄和 Vercel 的函數日誌有所幫助,但調試生產邊緣問題——尤其是競爭條件和時間相關的錯誤——仍然具有挑戰性。

數據本地化與合規

將用戶數據存儲在用戶附近是很直觀的,但監管合規可能很複雜。GDPR 要求歐盟數據留在歐盟。中國的數據本地化規則限制數據轉移到中國境外。澳洲的隱私原則有自己的要求。

邊緣平台正在添加區域控制,但確保數據永不離開某些司法管轄區需要仔細的架構和持續的警覺。

效能影響

邊緣計算的證明在於效能數據。真實世界的測量顯示顯著改善:

  • **首字節時間(TTFB):**傳統雲端伺服器:200-500 毫秒。邊緣函數:10-50 毫秒。
  • **可交互時間:**邊緣提供的頁面:平均快 1-2 秒。
  • **全球可用性:**邊緣網路在全球範圍內保持效能一致性,而不僅僅是有數據中心的區域。

對於每毫秒都很重要的應用——電子商務、金融服務、即時協作——邊緣計算不是可選的。這是競爭的必要條件。

未來:自主邊緣

邊緣計算的軌跡指向日益自主的基礎設施。今天的邊緣平台自動處理複製、擴展和故障轉移。明天的平台可能會:

智慧的請求路由,根據即時效能數據學習最佳後端選擇。

預測性緩存,根據預期的需求模式預先填充邊緣緩存。

自動區域合規,確保數據在沒有明確應用程式設計的情況下永不跨越司法邊界。

自我修復架構,自動檢測和隔離故障邊緣節點,無需人工干預。

邊緣計算與 AI/ML 能力的融合特別令人興奮。在邊緣運行推理——面部檢測、語音識別、內容分類——實現無雲端來回延遲的即時 AI 體驗。

邊緣計算適合您的應用嗎?

邊緣計算為以下情況提供最大價值:

  • **全球受眾:**為多個大洲用戶服務的應用從邊緣分發中獲益最多。
  • **效能關鍵應用:**電子商務、金融服務和即時工具,延遲直接影響業務成果。
  • **高流量應用:**減少.origin 伺服器的流量可以顯著降低基礎設施成本。
  • **靜態優先應用:**可以預先生成大部分內容的 Jamstack 網站,以最少的架構更改從邊緣服務中受益。

它對以下情況價值較低:

  • **單一區域應用:**如果所有用戶都在一個區域,傳統雲端基礎設施可能更簡單、更便宜。
  • **資料庫繁重的應用:**需要複雜、ACID 合規資料庫交易的應用可能不適合當前邊緣資料庫的限制。
  • **有狀態工作負載:**需要大量本地狀態的應用可能在無狀態邊緣函數約束下苦苦掙扎。

開始使用

對於準備探索邊緣計算的開發者,前進的道路很簡單:

**從單一路由開始。**識別您應用中一個非關鍵的 API 端點或頁面。将其部署為邊緣函數。測量效能改善。

**學習平台。**Cloudflare Workers 和 Vercel Edge Functions 是兩個主導平台。兩者都有出色的文檔、慷慨的免費套餐和活躍的社區。

**採納思維模式。**以分散式的方式思考。什麼可以預先計算?什麼需要在請求時計算?什麼數據必須來自集中式來源,而非可以複製的?

**測量一切。**在邊緣部署分析。比較採用邊緣前後的 TTFB、錯誤率和用戶滿意度指標。

邊緣計算代表了網頁開發自雲端運算興起以來最重要的架構轉變。掌握它的開發者和組織將構建更快、更強大、更全球化的應用。

準備將您的應用帶給更靠近用戶的地方了嗎? 邊緣在等待。

想探索用於下一個項目的邊緣架構嗎?聯繫 S.C.G.A. 討論分散式運算如何轉化您的網頁應用。

Share:

訂閱我們的電子報

獲取最新見解直接送到您的收件箱