OpenText startsida.
Tekniska ämnen

Vad är Chaos Engineering?

Illustration av IT-artiklar med fokus på en glödlampa

Översikt

Fråga vilken projektledare, utvecklare eller teamledare som helst. Det finns flera saker som kan gå fel under livscykeln för programvaruutveckling, till exempel fel, cyberattacker och systemavbrott. Oväntade misslyckanden är oundvikliga, vilket kan störa hela processen, begränsa resultaten och slösa bort viktiga resurser.

Kaosteknik

Chaos engineering är en disciplin som studerar hur dessa fel kan uppstå och tillhandahåller metoder för att undvika dem. Genom att förstå grundorsaken till felen kan kaosingenjörerna ta fram planer för att förhindra eller mildra dem.

Chaos engineering handlar inte om att skapa kaos, utan om att med hjälp av kontrollerade experiment identifiera potentiella felkällor i ett system innan de orsakar problem. På så sätt kan kaosingenjörer proaktivt förebygga avbrott och andra störningar.

Vad är egentligen Chaos Engineering?

Chaos engineering är en metod där man avsiktligt injicerar fel i ett system för att testa dess motståndskraft. Målet är att identifiera potentiella felkällor och åtgärda dem innan de orsakar ett faktiskt avbrott eller annan störning.

Det finns många sätt att skapa kaos i ett system, men det viktigaste är att ha en plan. Utan en plan är det lätt att skapa fler problem än man löser. När du skapar din plan måste du bestämma dig för vad du vill testa och hur du ska göra det. När du har en plan kan du börja experimentera.

Programvaruutvecklare kan enkelt införa kaosteknik i sina arbetsflöden med OpenText™ Professional Performance Engineering, OpenText™ Enterprise Performance Engineering eller OpenText™ Core Performance Engineering. Dessa lösningar gör det inte bara möjligt att testa prestandabelastning, utan de gör det också enkelt att köra andra kaostekniska experiment direkt i programvaran.

Genom att skapa dessa händelser i en kontrollerad icke-produktionsmiljö kan du testa hur ditt system reagerar och identifiera eventuella problem.

När du har identifierat potentiella felkällor kan du börja arbeta med att minska dem. Det kan handla om att lägga till övervakning eller loggning för att identifiera problem när de uppstår eller att ändra din design för att göra den mer motståndskraftig mot fel.

Vilka är principerna för Chaos Engineering?

Principerna för kaosteknik är:

  • Planera: Bestäm vad du vill testa och hur du ska göra det. Målet här är att skapa en hypotes. Vad kan gå fel i ett system? Vilka är de potentiella sårbarheter som kan utnyttjas?
  • Experiment: Injicera fel i systemet och se hur det reagerar. Felinjektion är helt enkelt processen att introducera ett problem i ett befintligt system för att avslöja en sårbarhet. Det är i princip en vana att avsiktligt "kasta in en skiftnyckel" i ett system för att se vad som händer.
  • Analysera: Använd data från dina experiment för att identifiera potentiella felkällor.
  • Förmildra: Om du hittar ett problem kan du avsluta experimentet och fokusera på att åtgärda det. Annars kan du skala upp ditt experiment tills du är framme vid problemets kärna.

Vilka är fördelarna med Chaos Engineering?

Så varför skulle något företag förstöra saker med flit? Att avslöja systemfel är nödvändigt för att göra det mer robust. Chaos engineering kan hjälpa dig att undvika avbrott och andra störningar. Genom att identifiera potentiella felkällor och åtgärda dem innan de orsakar problem kan du proaktivt förebygga störningar.

Dessutom ger chaos engineering flera fördelar för kunder, företag och teknik. Den största fördelen är att företagen kan skapa starkare produkter som påverkar deras resultat och uppfyller kundernas förväntningar.

Chaos Engineering, även känt som resiliensprovning, kan hjälpa företag att uppfylla kraven i Digital Operational Resilience Act (DORA), som syftar till att regelbundet testa systemens resiliens för att bedöma sårbarheter.

Hur skiljer sig Chaos Engineering från testning?

Chaos engineering skiljer sig från testning på ett par viktiga sätt. Chaos engineering fokuserar på att hitta potentiella felkällor innan de orsakar problem. Testning, å andra sidan, fokuserar på att verifiera att systemet fungerar som förväntat. Kort sagt är kaosteknik proaktiv medan testning är reaktiv.

Kaosingenjörer arbetar för att förhindra avbrott och andra störningar genom att introducera och korrigera kontrollerade fel innan de kan orsaka problem i en skarp miljö. Dessa kontrollerade fel hjälper till att identifiera vilka delar av systemet som är mer motståndskraftiga och vilka som behöver mer arbete. Testning kan bara verifiera att systemet fungerar när det är färdigt.

Hur liknar det OpenText Professional Performance Engineering?

OpenText Professional Performance Engineering är ett verktyg som främst fokuserar på en specifik typ av performance engineering. Använda OpenText Professional Performance Engineering, du kan distribuera avancerad belastningstestning som simulerar verkliga användningsförhållanden, vilket kan hjälpa dig att identifiera potentiella problem med belastningsprestanda innan de orsakar problem.

Men OpenText Professional Performance Engineering är inte bara ett verktyg för prestandateknik som kör belastningstester i en stabil miljö; det är ett verktyg som kombinerar både prestandateknik och kaosteknik i en plattform.

OpenText Professional Performance Engineering arbetar direkt med Gremlin, en berömd FaaS-plattform (failure-as-a-service) som gör att du kan skapa olika typer av kaoshändelser som CPU-spikar, nätverksfördröjning och diskfel. Du kan enkelt organisera och initiera Gremlin-kaosexperiment direkt inom OpenText Professional Performance Engineering och köra belastningstester baserat på onormala förhållanden.

Sammantaget, OpenText Professional Performance Engineering gör att du proaktivt kan förhindra belastningsstörningar under olika typer av kaoshändelser. Genom att identifiera potentiella felkällor innan de orsakar problem kan det här verktyget bidra till att spara tid, pengar och värdefulla resurser.

Sätt Chaos Engineering i verket med lösningar för prestandateknik

I slutändan är kaosteknik drivkraften bakom alla framgångsrika mjukvaruprojekt. Mjukvaruutvecklare kan använda sig av chaos engineering för att genomföra projekt som håller över tid.

Genom OpenText's partnerskap med Gremlin och Steadybit, OpenText prestandatekniska lösningar kan testa systemets prestanda under belastning och olika kaoshändelser samtidigt, så att du kan hitta potentiella felpunkter och korrigera problem proaktivt.

Hur kan vi hjälpa till?

Fotnoter