Serverless 應用引擎( SAE )是阿裡雲上以應用執行個體為中心的免運維 PaaS 産品,充分釋放雲計算的規模化營運的紅利提供給客戶,以開發測試環境 2Core 4GiB 的應用運作一天( 按 8 小時計算)為例,SAE 應用單執行個體成本的費用不到 3元/天,SAE最近推出了 HTTP 網關産品結合阿裡雲 SLB 的産品能力,可以非常友善的将 HTTP/HTTPS 流量根據 URL 路徑(ContextPath)轉發至不同應用的 Web 端口。
基本概念
SAE 網關的模型非常簡單,使用者隻需要關心規則,規則由域名、路徑與應用共同構成。對于單個網關執行個體,使用者可以建立多條規則,每條規則的流量可以向指定應用的執行個體進行轉發。如下圖所示。

準備工作
1、購買 SLB 産品執行個體。對于用于 VPC 内的内網網關需求,可以選擇購買同 VPC 内的 SLB 執行個體,對于公網網關需求,需要購買公網類型的 SLB 執行個體。SLB 産品的收費細則請參見産品定價,由于技術原因,不支援性能共享型執行個體。
2、準備應用。根據業務實際情況,準備1個或者多個可以響應不同 url 路徑請求的 SAE 應用,目前不支援其他産品的應用接入。
快速接入
SAE 接入方式非常簡單。相比傳統的 Nginx 伺服器配置冗長的 nginx.conf 檔案,SAE 主需要在可視化的界面上,選擇比對的 url 路徑或域名想要到達的應用端口即可。
1、進入命名空間管理頁面。
2、點選開始建立一條網關路由規則
3、按照業務實際情況配置規則
SAE 網關支援使用者配置 HTTP 或 HTTPS 協定的規則,并按照通路請求的域名以及 url 路徑将請求向應用執行個體端口進行轉發。如下圖所示:
簡單兩步,不需要編寫複雜的 Nginx 配置,不需要花費精力運維 Nginx 伺服器,一個簡單的 SAE 網關就實作了。
問題診斷
一般來說,SAE 提供的網關不需要使用者運維,能夠幫助使用者自動上下線執行個體并恢複配置。但是一些極端的情況,例如 SLB 執行個體被釋放、SLB 執行個體到期等, SAE 無法幫助使用者恢複。這個時候可以檢視網關關聯的事件,對發生的問題進行初步的診斷。如果需要 SAE 産品的支援,可以随時送出工單進行詢問。
較為複雜的診斷,可以通過伺服器端抓包進行判斷。SAE 同樣提供了 Webshell 能力,支援在網頁上對執行個體進行檢視,詳見文章如何利用 Webshell 診斷應用:
https://help.aliyun.com/document_detail/123414.html?spm=a2c4g.11186623.6.646.56587e42nZOLUI成本核算
單個網關每日參考價格是 0.48 元(按 SLB 獨享簡約型,按量付費模式,國内 region ),目前已支援 HTTP/HTTPS 協定接入。自建 Nginx 網關方案和 SAE&SLB 具體的成本分析如下:
從上面的分析對比可以看出, SAEHttp 網關相比自建 Nginx 網關有顯著的成本優勢,同時還降低了網關的運維複雜度,推薦客戶使用。
作者資訊:落語,阿裡雲分布式應用服務開發工程師。