Výkon Kompromisy efektivity pro Power Platform pracovní zátěže
Pracovní zátěž, která splňuje své výkonnostní cíle bez nadměrného poskytování, je efektivní. Klíčové strategie pro efektivitu výkonu zahrnují správné používání optimalizací kódu, návrhových vzorů a plánování kapacity. Jasné výkonnostní cíle a testování jsou základem tohoto pilíře.
Během fáze návrhu pracovní zátěže je důležité zvážit, jak rozhodnutí založená na zásadách návrhu účinnosti výkonu a doporučení v Kontrolním seznamu kontroly návrhu pro Výkonnost Efficiency může ovlivnit cíle a optimalizační úsilí ostatních pilířů. Některá rozhodnutí mohou být přínosem pro některé pilíře, ale pro jiné představují kompromisy. Tento článek uvádí příklady kompromisů, se kterými se může tým pracovního vytížení setkat při navrhování architektury pracovního vytížení a operací pro efektivitu výkonu.
Výkon Kompromisy efektivity se spolehlivostí
Kompromis: Snížená replikace a zvýšená hustota. Základním kamenem spolehlivosti je zajištění odolnosti pomocí replikace a omezení rádiusu chybných funkcí.
- Konsolidace zdrojů pracovního zatížení může využít přebytečnou kapacitu a zlepšit efektivitu. Zvětšuje však rádius výbuchu poruchy ve společně umístěné součásti nebo aplikační platformě.
Kompromis: Zvýšená složitost. Spolehlivost upřednostňuje jednoduchost.
Rozdělení a sdílení dat pomáhá vyhnout se problémům s výkonem u velkých nebo často používaných datových sad. Implementace těchto vzorů však zvyšuje složitost, protože (případnou) konzistenci je třeba udržovat napříč dalšími zdroji.
Denormalizace dat pro optimalizované přístupové vzory může zlepšit výkon, ale přináší složitost, protože více reprezentací dat je třeba udržovat synchronizované.
Vzory návrhu cloudu zaměřené na výkon někdy vyžadují zavedení dalších komponent. Použití těchto komponent zvyšuje plochu pracovní zátěže. Komponenty pak musí být samy o sobě spolehlivé, aby udržely spolehlivost celého pracovního zatížení.
Kompromis: Testování a pozorování v aktivních prostředích. Vyhýbání se zbytečnému používání produkčních systémů je pro spolehlivost přístupem sebezáchovy.
Testování výkonu v aktivních prostředích s sebou nese riziko způsobení poruch v důsledku testovacích akcí nebo konfigurací.
Pracovní zátěž by měla být vybavena systémem monitorování výkonu aplikací (APM), který týmům umožňuje učit se z aktivních prostředí. Nástroj APM je nainstalován a konfigurován v kódu aplikace nebo v hostitelském prostředí. Nesprávné použití, překročení omezení nebo nesprávná konfigurace nástroje může ohrozit jeho funkčnost a údržba, potenciálně podkopat spolehlivost.
Kompromisy účinnosti a bezpečnosti
Kompromis: Omezení bezpečnostních kontrol. Bezpečnostní kontroly jsou zavedeny napříč více vrstvami, někdy nadbytečně, aby poskytovaly ochranu do hloubky.
Jednou ze strategií optimalizace výkonu je odstranit nebo obejít komponenty nebo procesy, které přispívají ke zpožděním v toku, zvláště když jejich doba zpracování není odůvodněná. Tato strategie však může ohrozit bezpečnost a měla by být doprovázena důkladnou analýzou rizik. Zvažte následující příklady:
Odstraněním šifrování při přenosu nebo v klidu za účelem zlepšení přenosové rychlosti vystavujete data potenciálnímu porušení integrity nebo důvěrnosti.
Odstranění nebo omezení nástrojů pro bezpečnostní skenování nebo kontrolu za účelem zkrácení doby zpracování může ohrozit důvěrnost, integritu nebo dostupnost těchto nástrojů zamknout.
Odstranění pravidel brány firewall ze síťových toků za účelem zlepšení latence sítě může umožnit nežádoucí komunikaci.
Minimalizace ověřování dat pro rychlejší zpracování dat může narušit integritu dat, zejména pokud jsou vstupy škodlivé.
Kompromis: Větší plocha pracovní zátěže. Zabezpečení upřednostňuje zmenšenou a uzavřenou plochu, aby se minimalizovaly vektory útoků a omezilo se řízení bezpečnostních kontrol.
Vzory návrhu cloudu zaměřené na výkon někdy vyžadují zavedení dalších komponent. Tyto komponenty zvětšují plochu pracovní zátěže. Nové komponenty musí být zabezpečeny, možná způsoby, které se v systému ještě nepoužívají, a často zvyšují rozsah souladu. Zvažte tyto běžně přidávané komponenty:
Představujeme několik různých metod zpracování obchodní logiky, jako jsou cloudové toky a pluginy s minimálním psaním kódu, na základě požadavků na výkon každého úkolu.
Přesunutí zpracování na úlohy na pozadí nebo dokonce na výpočet klienta.
Kompromis: Odstranění segmentace. Bezpečnostní pilíř upřednostňuje silnou segmentaci, aby umožnil jemné bezpečnostní kontroly a snížil poloměr výbuchu.
Sdílení zdrojů je přístup ke zlepšení efektivity. Zvyšuje hustotu pro optimalizaci využití kapacity. Například opětovné použití s minimálním psaním kódu pluginů ve více aplikacích plátna a cloudových tocích. Zvýšená hustota může vést k následujícím bezpečnostním problémům:
Identita sdílené pracovní zátěže, která porušuje zásadu nejmenších oprávnění a zakrývá jednotlivé auditní záznamy v protokolech přístupu.
Kontroly zabezpečení perimetru, například pravidla sítě, jsou omezeny tak, aby pokryly všechny společně umístěné komponenty, což jednotlivým komponentám poskytuje větší přístup, než je nutné.
Kompromisy výkonnosti a efektivity s provozní dokonalostí
Kompromis: Snížená pozorovatelnost. Monitorování je nezbytné pro zajištění pracovní zátěže se smysluplným upozorněním a pomáhá zajistit úspěšný incident odpověď.
Snížení objemu protokolů a metrik za účelem snížení doby zpracování strávené shromažďováním telemetrie namísto jiných úloh snižuje celkovou pozorovatelnost systému. Některé příklady výsledné snížené pozorovatelnosti zahrnují:
- Omezuje datové body, které se používají k vytváření smysluplných výstrah.
- Vede to k mezerám v pokrytí aktivit incidentu odpověď.
- Omezuje pozorovatelnost v interakcích a hranicích citlivých na zabezpečení nebo dodržování předpisů.
Při implementaci vzorů návrhu výkonu se často zvyšuje složitost pracovní zátěže. Komponenty se přidávají ke kritickým tokům. Strategie monitorování pracovní zátěže a monitorování výkonu musí zahrnovat tyto složky. Když tok zahrnuje více komponent nebo hranic aplikací, zvyšuje se složitost monitorování výkonu tohoto toku. Výkon toku musí být korelován napříč všemi propojenými komponentami.
Kompromis: Zvýšená složitost operací. Složité prostředí má složitější interakce a vyšší pravděpodobnost negativního dopadu rutinních, ad hoc a nouzových operací.
Zlepšení efektivity výkonu zvýšením hustoty zvyšuje riziko provozních úkolů. Chyba v jednom procesu může mít velký rádius výbuchu.
Jak jsou vzory návrhu výkonu implementovány, ovlivňují provozní postupy, jako je zálohování, střídání klíčů a strategie obnovy. Například dělení a shardování dat může zkomplikovat rutinní úlohy, když se týmy snaží zajistit, aby tyto úlohy neovlivnily konzistenci dat.
Kompromis: kulturní stres. Provozní dokonalost je zakořeněna v kultuře bezúhonnosti, respektu a neustálého zlepšování.
Provádění analýzy hlavních příčin problémů s výkonem identifikuje nedostatky v procesech nebo implementacích, které vyžadují nápravu. Tým by měl cvičení považovat za příležitost k učení. Pokud jsou členové týmu obviňováni z problémů, může to ovlivnit morálku.
Rutinní a ad hoc procesy mohou ovlivnit výkon pracovní zátěže. Často se považuje za vhodnější provádět tyto činnosti mimo špičku. Mimo špičku však může být pro členy týmu, kteří jsou za tyto úkoly zodpovědní nebo v nich zkušení, nepohodlné nebo mimo běžnou pracovní dobu.
Kompromisy efektivity výkonu s optimalizací zkušeností
Kompromis: Snížené zapojení uživatelů. Pilíř Optimalizace zážitku upřednostňuje poutavější uživatelské prostředí.
Optimalizace výkonu upřednostňuje používání funkcí platformy před přizpůsobením, které upřednostňuje vlastní komponenty, což by mohlo vést k poutavějšímu uživatelskému zážitku.
Optimalizace výkonu se může příliš soustředit na minimalizaci složitosti, což znevýhodňuje funkce pro poutavější uživatelské prostředí, jako jsou vlastní komponenty a integrace.
Vývoj uživatelského rozhraní se často provádí v rychlejších iteracích a cyklech dodávek, což může ztížit neustálé zvyšování výkonu.