reaktiv arkitektur
En softwarearkitektur, der fokuserer på at opbygge systemer, der er responsive, robuste, elastiske og meddelelsesdrevne, især anvendt i AI-systemer til realtidsinferens.
Kort fortalt
Kort fortalt: en måde at designe systemer på, så de reagerer hurtigt på hændelser og forbliver stabile under pres, fx når en AI-model skal svare på mange forespørgsler på én gang.
- Kategori
- arkitektur
- Niveau
- øvet
Betydninger
1- 1
En arkitekturstil, hvor systemer er designet til at reagere på hændelser (events) og ændringer i tilstand, kendetegnet ved asynkron meddelelsespassering, backpressure og ikke-blokerende I/O, ofte anvendt i distributionssystemer og AI-realtidsapplikationer.
- For at håndtere tusindvis af samtidige forespørgsler på sprogmodellen implementerede vi en reaktiv arkitektur med Akka-rammen. — Eksempel fra praksis
- Reaktiv arkitektur muliggør, at inferenspipelinen automatisk skaleres op ved spidsbelastning uden at miste responsivitet. — Eksempel fra praksis
Hvornår bruges det
Reaktiv arkitektur bruges i AI-systemer, der kræver høj tilgængelighed og lav latenstid, som f.eks. chatbots, anbefalingssystemer og IoT-enheder med edge intelligence. Mønstret understøtter asynkron kommunikation og backpressure, så modellen ikke overvældes.
Kodeeksempel
import asyncio
async def handle_request(model, request):
# simulate inference
await asyncio.sleep(0.1)
return model.predict(request)
async def main():
model = load_model()
tasks = [handle_request(model, req) for req in requests]
results = await asyncio.gather(*tasks)
# process resultsEksempel på reaktiv håndtering af inferensforespørgsler med asyncio. Hver anmodning behandles asynkront, så systemet kan håndtere mange samtidige kald uden at blokere.
Oprindelse
Begrebet stammer fra reaktiv programmering og er formaliseret i 'Reactive Manifesto' (2013) af Jonas Bonér m.fl., der definerer fire principper: responsive, resilient, elastic, message-driven.