使用最佳化的設計

已完成
最大化資源和作業的使用。 將其套用至解決方案的交涉功能性和非功能性需求。

服務和供應項目提供各種功能和定價層。 購買一組功能之後,請務必將其充分利用。 尋找在分層中最大化投資的方法。 同樣地,請持續評估計費模型,以根據目前的生產工作負載,找出更符合您使用的計費模型。

範例案例

Contoso University 目前正在舉辦商業現成 (COTS) 解決方案,而此解決方案允許大學教職員針對學年建立和更新課程,並且是這些課程學生的主要註冊入口網站。 此解決方案與軟體即服務 (SaaS) 教育管理系統具有自訂整合,而且他們希望在幾年內最終將所有功能都移轉至其中。 同時,他們想要最佳化自訂整合元件的成本。

COTS 供應項目的技術解決方案通常被視為黑盒子,但其適用於 MySQL 的 Azure 資料庫的資料庫除外。 自訂整合是 Azure Durable Function,其會在 Azure App Service 的標準服務方案上執行。 此 App Service 先前裝載大學網站,但目前情況已非如此。 此耐久性功能是專用 Azure 儲存體帳戶所支援的 Python 應用程式,而此應用程式執行從 MySQL 資料庫到 SaaS API 的夜間同步處理。

實際使用使用量型定價

可能會有提供使用量型定價的服務,這表示您只需支付服務的使用費用,而且您可以在不需要停止產生成本時關閉服務。 如果您有零星使用的工作負載元件,則相較於支付元件全年無休執行的費用,這有助於將浪費的成本降到最低。

透過使用使用量型定價,您只需支付確切使用的費用。 未預期無時無刻地使用您的工作負載計算時,此選項是不錯的選擇。

Contoso 的挑戰

  • 同步處理工作通常會在每晚特定時間執行約一小時。 其效能一直令人滿意。 故障極為罕見,而且暫時性錯誤在目前的設定中可以妥善處理。
  • 因為同步處理工作所需的計算每天只使用大約一小時,而且不論使用率,他們都會支付 24 小時的費用,所以工作負載小組對目前設計的替代方案感興趣。
  • 小組已考慮撰寫指令碼,以在每晚同步處理執行之後關閉服務,並在第二天重新部署服務,但此解決方案會帶來高度風險和複雜度。

套用方法和結果

  • 小組會分析工作歷程記錄,並發現函數的最長執行時間只有不到兩個小時。 他們會比較專用方案的成本與最差案例的 Azure Functions 使用量方案成本,並得出使用量方案成本較低的結論。
  • 小組會執行效能測試,以確保效能足夠,而且他們注意到執行時間略有增加,但仍在可接受的限制內。
  • 工作負載的整體成本可使用使用量方案予以降低,因為其只會在工作執行時產生成本。

最佳化高可用性設計

如果您已經支付資源的費用,則請優先在主動-被動模型上部署主動-主動或僅限主動,以作為復原方案的一部分。

如果您的設計預設為使用主動-被動模型,則您可能有其他可能使用的閒置資源。 轉換成主動-主動可能可讓您符合負載撫平和調整高載需求,而不會超支。 如果您可以使用僅限主動模型來符合復原目標,則可以完全移除這些資源的成本。

Contoso 的挑戰

  • COTS 應用程式會使用針對相同區域高可用性所設定的適用於 MySQL 的 Azure 資料庫彈性伺服器,以在與主要伺服器相同的可用性區域中提供待命伺服器。 其也已啟用自動備份。
  • 工作負載的 RPO (12 個小時) 相當長,而 RTO 在上課期間為三個小時。
  • 根據先前的復原測試,小組知道他們可以透過自動容錯移轉至待命伺服器,以符合其 RPO 和 RTO 目標。 他們也已測試從備份復原資料庫,而且可以符合此案例中的目標。

套用方法和結果

  • 工作負載小組會重新評估高可用性設計的優點,而服務的成本是單一執行個體的兩倍。
  • 小組會測試建置新的執行個體,並從備份復原資料庫,而且他們確信其仍符合其復原目標,因此他們決定排除待命執行個體。
  • 小組會更新 DR 方案來反映新的復原策略,並透過新的設定來節省成本。

讓您的雲端環境沒有未使用的資源和資料

定期且嚴格地檢閱未使用資源和資料的部署,並將其解除委任。 經過一段時間,過去基於某個目的所需但不再使用的資源和資料可能會殘留在您的雲端環境中,並產生不必要的成本。 請保持環境清潔,以協助最佳化成本效益。

關閉未使用的資源並在您不再需要資料時將其刪除可減少浪費,並釋出資金,以將其投資到其他地方。

Contoso 的挑戰

  • 該大學歷來保守處理解決方案的解除委任,擔心其可能需要還原為先前的設定。 這種謹慎導致放棄在一或多個環境中執行幾個月的服務,而且在某些情況下已遺忘這些服務。
  • 通常是偶然發現已放棄的服務,因為沒有正式的程序可檢閱環境是否有這類服務。

套用方法和結果

  • 小組會將 App Service 的解除委任新增至待辦項目,作為從 App Service 移轉至 Durable Function 使用量裝載的一部分。 在下一個短期衝刺中,他們將會關閉所有環境的 App Service 部署。
  • 為了協助主動偵測已放棄的資源,小組會在 Azure Advisor 中設定警示,以通知其有未使用的資源。
  • 小組會實作新的原則,要求小組每月完整檢閱生產前環境,並且每季完整檢閱生產環境,以識別已放棄的資源。 任何找到的已放棄資源都將會新增至待辦項目以進行解除委任。

檢定您的知識

1.

其中哪一項可供特定 Azure 計算服務使用,讓您只支付所使用計算的費用來節省成本?

2.

如果您已經支付資源的費用,則應該避免下列哪一個 HA 設計以符合成本效益?

3.

工作負載小組使用哪種方式來確保攔截已放棄的資源,例如不再使用的 MySQL 伺服器?