Sobes.tech
Senior

Lze ihned zamítnout inzerát, pokud rychlá služba již vrátila zamítnutí, aniž byste čekali na pomalou ML-službu anti-frauda?

sobes.tech AI

Odpověď od AI

Ano, je možné okamžitě zamítnout žádost, pokud rychlá služba anti-fraud vrátí zamítnutí, aniž bychom čekali na výsledek pomalé ML služby.

Tento přístup je běžný pro optimalizaci doby odezvy a zdrojů:

  • Rychlá služba provádí počáteční kontrolu a při jasném zamítnutí okamžitě vrátí reject.
  • Pomalá ML služba může pokračovat v asynchronním zpracování pro logging, trénink nebo následnou analýzu.

V jazyce Go lze toto implementovat pomocí kanálů a kontextů, zrušením čekání na výsledek pomalé služby při obdržení zamítnutí od rychlé.

Příklad:

fastResult := make(chan bool)
slowResult := make(chan bool)

// Spuštění rychlé služby
go func() {
    fastResult <- fastAntiFraudCheck()
}()

// Spuštění pomalé ML služby
go func() {
    slowResult <- slowMLCheck()
}()

select {
case fastOk := <-fastResult:
    if !fastOk {
        // okamžité zamítnutí
        return reject()
    }
    // čekat na slowResult nebo pokračovat
case slowOk := <-slowResult:
    if !slowOk {
        return reject()
    }
}

Tímto způsobem lze zvýšit odezvu systému, aniž bychom čekali na dlouhé kontroly, pokud již existuje důvod k zamítnutí.