AWS AppConfig 瀏覽器和行動使用考量事項 - AWS AppConfig

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS AppConfig 瀏覽器和行動使用考量事項

功能旗標可讓您即時更新網頁和行動應用程式的體驗,而無需應用程式存放區版本的額外負荷、風險或剛性。使用功能旗標,您可以在您選擇的時間逐漸向使用者群發佈變更。如果您遇到錯誤,您可以立即轉返變更,而不需要使用者升級至新的軟體版本。簡而言之,在將變更部署到您的應用程式時,功能旗標可提供更大的控制和彈性。

下列各節說明搭配網頁和行動裝置使用 AWS AppConfig 功能旗標的重要考量。

組態資料和旗標擷取

對於瀏覽器和行動使用案例,許多客戶選擇在 Web 或行動應用程式與 之間使用代理層 AWS AppConfig。這樣做會將您的 AWS AppConfig 通話量與使用者群的大小分離,進而降低成本。它還可讓您利用 AWS AppConfig 代理程式,最佳化旗號擷取效能,並支援使用 建立代理的多變數 flags. AWS AppConfig recommends 等功能。 AWS Lambda 設定 AWS AppConfig Lambda 延伸來擷取 Lambda 函數中的功能旗標 AWS AppConfig,而不是直接從中擷取旗標。撰寫 函數以接受來自事件請求的 AWS AppConfig 擷取參數,並在 Lambda 回應中傳回對應的組態資料。使用 Lambda 函數 URLs 將代理公開至網際網路。

設定代理之後,請考慮擷取資料的頻率。Mobile 使用案例通常不需要高頻率輪詢間隔。設定 AWS AppConfig 代理程式從 重新整理資料 AWS AppConfig 的頻率高於應用程式從代理重新整理的頻率。

身分驗證和 Amazon Cognito

Lambda URLs 支援兩種形式的存取控制AWS_IAM以及 NONENONE 如果您偏好在 Lambda 函數中實作自己的身分驗證和授權,請使用 。如果您的使用案例允許公開您的端點,且您的組態資料不包含敏感資料,則 NONE也是建議的選項。對於所有其他使用案例,請使用 AWS_IAM

重要

如果您在沒有身分驗證的情況下將端點公開到網際網路,請確定您的組態資料不會洩漏敏感資料,包括個人身分識別資訊 (PII)、使用者 IDs 或未發佈的功能名稱。

如果您選擇使用 AWS_IAM,則需要使用 Amazon Cognito 管理登入資料。若要開始使用 Amazon Cognito,請建立身分集區。身分集區可讓您為已驗證或訪客使用者將短期憑證提供給應用程式。您需要在身分集區中新增角色,以允許使用者將 InvokeFunctionUrl用於 Lambda 函數。這樣做可讓應用程式的執行個體存取擷取組態資料所需的登入資料。

在應用程式中使用 Amazon Cognito 時,請考慮使用 AWS Amplify。Amplify 可簡化行動/網路應用程式與 的互動 AWS ,並提供 Amazon Cognito 的內建支援。

快取

使用 時 AWS AppConfig,您應該一律在裝置本機或瀏覽器中快取組態資料。快取提供下列優點:

  • 透過減少延遲和電池電量來改善效能

  • 透過消除對網路存取的相依性來提供穩定性

  • 降低資料擷取頻率以降低成本

對於行動使用案例,我們建議您實作記憶體內和持久性裝置內快取。設定您的應用程式,以嘗試從記憶體內快取擷取所需的組態,並視需要返回從代理擷取。從代理成功擷取後,請更新記憶體內快取,然後將組態保留到裝置。使用背景程序逐一查看快取並重新整理每個組態。在應用程式啟動後第一次擷取組態時,如果擷取失敗,請延遲至持久性組態 (並使用它來植入記憶體內快取)。

區隔

使用特徵標記時,您可能想要將特徵標記體驗分段到整個客戶群。若要這樣做,請將內容提供給旗標擷取呼叫,並設定規則,根據提供的內容傳回功能旗標的不同變體。例如,您可能有一個 iOS 18.X 使用者的特徵標記變體、iOS 17.X 使用者的變體,以及所有其他 iOS 版本的預設標記。使用變體,您可以將應用程式的每個 iOS 版本設定為在相同環境中鎖定相同的組態,但根據擷取呼叫中提供的內容 (例如「版本」:「iOS18.1」),裝置會收到適當的組態變體。

注意

如果您使用行動使用案例 AWS AppConfig 的功能標記變體,則必須使用 AWS AppConfig 代理程式和代理來擷取功能標記。

如果您選擇不使用 AWS AppConfig 代理程式擷取功能旗標,則可以利用 AWS AppConfig 環境進行簡單、低基數的分割。環境是目標的邏輯部署群組。除了將組態分割為開發、測試和生產環境之外,您還可以透過建立行動裝置特定環境來細分客戶群,例如裝置類型 (平板電腦與手機) 或作業系統主要版本。使用不同的環境,您可以部署相同或不同的組態資料集,以滿足客戶群的特定需求。

頻寬 (行動使用案例)

一般而言,目標是將每個旗標的大小設定為較小的。行動使用案例往往涉及低頻寬限制。將資料大小減到最少,有助於維持整個使用者群的一致體驗。此外,請考慮因為行動裝置通常在低頻寬和無頻寬環境之間運作,所以裝置內快取至關重要。如果無法擷取任何組態資料,應用程式程式碼也會正常失敗。

其他標記使用案例

功能旗標的強大功能超越了功能發佈的便利性。長期存在的操作旗標可用來改善應用程式的操作狀態。例如,您可以建立效能監控切換,在事件期間發出其他指標和偵錯資料。或者,您可能想要維護和調整客戶群區段的應用程式重新整理率。