工作負載的性能 Power Platform 效率權衡
滿足其性能目標且沒有過度預置的工作負載是高效的。 提高性能效率的關鍵策略包括正確使用代碼優化、設計模式和容量規劃。 明確的性能目標和測試是這一支柱的基礎。
在工作負載的設計階段,請務必考慮根據 性能效率 設計評審清單中的 性能效率設計原則 和建議的決策如何影響其他支柱的目標和優化工作。 某些決策可能使某些支柱受益,但對其他支柱來說卻意味著權衡。 本文列出了工作負載團隊在設計工作負載架構和操作以提高性能效率時可能遇到的示例權衡。
性能、效率與可靠性的權衡
權衡:減少複製並提高密度。 可靠性的基石是通過使用複製和限制故障的衝擊半徑來確保彈性。
- 整合工作負載資源可以利用多餘的容量並提高效率。 但是,它會增加共存元件或應用平臺中故障的衝擊半徑。
權衡:增加複雜性。 可靠性優先於簡單性。
數據分區和分片有助於避免大型或頻繁訪問的數據集中的性能問題。 但是,這些模式的實現增加了複雜性,因為需要跨其他資源保持 (最終) 一致性。
對數據進行非規範化以優化訪問模式可以提高性能,但會帶來複雜性,因為數據的多個表示需要保持同步。
以性能為中心的雲設計模式有時需要引入其他元件。 使用這些元件會增加工作負載的週邊應用。 然後,元件本身必須可靠,以保持整個工作負載的可靠性。
權衡:在活動環境中進行測試和觀察。 避免不必要地使用生產系統是實現可靠性的一種自我保護方法。
活動環境中的性能測試存在因測試操作或配置而導致故障的風險。
應使用應用程式性能監控 (APM) 系統對工作負載進行檢測,使團隊能夠從活動環境中學習。 APM 工具在應用程式代碼或託管環境中安裝和配置。 工具使用不當、超出限制或配置錯誤可能會損害其功能和維護,從而可能破壞可靠性。
性能、效率與安全性的權衡
權衡:減少安全控制。 安全控制跨多個層建立,有時是冗餘的,以提供深度防禦。
一種性能優化策略是刪除或繞過導致流程延遲的元件或流程,尤其是當其處理時間不合理時。 但是,此策略可能會危及安全性,應伴隨著全面的風險分析。 請參考下列範例:
刪除傳輸中加密或靜態加密以提高傳送速率會使資料面臨潛在的完整性或機密性洩露風險。
刪除或減少安全掃描或檢查工具以縮短處理時間可能會損害這些工具保護的機密性、完整性或可用性。
從網路流中刪除防火牆規則以改善網路延遲可能會允許不需要的通信。
為了更快地進行數據處理而盡量減少數據驗證可能會損害數據完整性,尤其是在輸入是惡意的情況下。
權衡:增加工作負載外圍應用。 安全性優先考慮減少和受控的週邊應用,以最大限度地減少攻擊媒介並減少安全控制的管理。
以性能為中心的雲設計模式有時需要引入其他元件。 這些元件會增加工作負載的週邊應用。 新元件必須得到保護,可能採用系統中尚未使用的方式,並且它們通常會增加合規性範圍。 請考慮以下常見添加的元件:
根據每個工作的性能要求,引入多種不同的業務邏輯處理方法,例如 Cloud Flows 和低程式碼外掛程式。
將處理卸載到後台作業甚至客戶端計算。
權衡:刪除分段。 安全支柱優先考慮強分段,以實現精細的安全控制並減少衝擊半徑。
共用資源是一種提高效率的方法。 它增加了密度以優化容量使用。 例如,在多個畫布應用和雲端流中重複使用低程式碼外掛程式。 增加的密度可能會導致以下安全問題:
違反最低許可權原則並隱藏訪問日誌中單個審計跟蹤的共用工作負載身份。
邊界安全控制 (例如網路規則) 減少以涵蓋所有共存元件,從而為各個元件提供不必要的訪問許可權。
性能效率與卓越運營的權衡
權衡:可觀察性降低。 監控對於為工作負載提供有意義的警報並幫助確保成功回覆事件是必要的。
減少日誌和指標量以減少收集遙測數據而不是其他任務所花費的處理時間,會降低系統的整體可觀測性。 導致可觀測性降低的一些範例包括:
- 它限制了用於構建有意義警報的數據點。
- 它導致事件回覆活動的覆蓋範圍出現缺口。
- 它限制了安全敏感或合規性敏感的交互和邊界的可觀測性。
實施性能設計模式時,工作負載的複雜性通常會增加。 元件被添加到關鍵流中。 工作負載監控策略和性能監控必須包括這些元件。 當流跨越多個元件或應用程式邊界時,監控該流性能的複雜性會增加。 需要在所有互連元件之間關聯流性能。
權衡:操作複雜性增加。 複雜環境具有更複雜的交互,並且更有可能受到常規、臨時和緊急操作的負面影響。
通過增加密度來提高性能效率會提高運營任務的風險。 單個進程中的錯誤可能具有較大的影響半徑。
隨著性能設計模式的實施,它們會影響備份、金鑰輪換和恢復策略等操作過程。 例如,當團隊試圖確保日常任務不會影響數據一致性時,數據分區和分片可能會使這些任務複雜化。
權衡:文化壓力。 卓越運營植根於無可指責、尊重和持續改進的文化。
對性能問題進行根本原因分析,可以識別需要糾正的流程或實施中的缺陷。 團隊應該將練習視為一個學習機會。 如果團隊成員因問題而受到指責,士氣可能會受到影響。
例行和臨時流程可能會影響工作負載性能。 通常認為在非高峰時段進行這些活動是可取的。 但是,對於負責或擅長這些任務的團隊成員來說,非高峰時間可能會帶來不便或超出正常時間。
性能效率與 Experience Optimization 的權衡
權衡:用戶參與度降低。 體驗優化支柱優先考慮更具吸引力的用戶體驗。
優化性能會優先使用平臺功能,而不是自定義功能,因為自定義功能會降低自定義元件的優先順序,而自定義元件可能會帶來更具吸引力的用戶體驗。
優化性能可能會過於專注於最小化複雜性,這會降低功能 (例如自定義元件和集成) 的優先順序,從而獲得更具吸引力的用戶體驗。
用戶介面開發通常完成更快的反覆運算和交付週期,這使得持續提高性能變得更加困難。