0
Cadence Workflow
Cadence Workflow Engine blev udviklet på Uber og åben sourcing under MIT-licens.Forskellen mellem Cadence og størstedelen af de eksisterende workflow-motorer er, at den er udviklerfokuseret og er ekstremt fleksibel og skalerbar (til titusinder opdateringer i sekundet og op til milliarder af åbne arbejdsgange).Arbejdsgange er skrevet som objektorienterede programmer, og motoren sikrer, at tilstanden af arbejdsgangsobjekter inklusive trådstacks og lokale variabler er fuldt ud bevaret i tilfælde af værtsfejl .... Kadence bruges til praktisk talt enhver backend-applikation, der lever ud over en enkeltanmod om svar.Eksempler på brug er: Distribuerede CRON-job Håndtering af ML / Data-rørledninger Reagerer på forretningsbegivenheder.For eksempel turbegivenheder på Uber.Arbejdsgangen kan akkumuleres tilstand baseret på modtagne begivenheder og udføre aktiviteter, når det er nødvendigt.Implementering af tjenester til Mesos / Kubernetes CI Rørledning-implementering Sørg for, at flere servicekald afsluttes, når en anmodning modtages.Inkluderet implementering af SAGA-mønster Håndtering af menneskelige arbejderopgaver (svarer til Amazon MTurk) Mediebehandling Kundesupport Billetrutering Ordrebehandling Testtjeneste svarende til ChaosMonkey og mange andre Det andet sæt brugssager er baseret på porting af eksisterende workflow-motorer til at køre på Cadence.Praktisk set kan ethvert eksisterende sprog til specifikation af arbejdsgange for motorer flyttes til kørsel på Cadence.Der er flere interne Uber-systemer, der blev portet.På denne måde kan en enkelt backend-tjeneste drive flere domænespecifikke workflow-systemer.