Resonate brings
reliability and scalability
to the language you love
Currently available in
Local Function Invocation
# Run bar() here
@resonate.register
def foo(ctx):
promise = yield ctx.lfi(bar)
result = yield promise
return result
Remote Function Invocation
# Run bar() over there
@resonate.register
def foo(ctx):
promise = yield ctx.rfi("bar").options(
send_to=poll("service-bar")
)
result = yield promise
return result
Detached Function Invocation
# Run bar() detached
@resonate.register
def foo(ctx):
yield ctx.detached("bar").options(
send_to=poll("service-bar")
)
return
Run here
Run over there
Sequential code
Concurrent, distributed, and durable executions
Resonate is dead simple, formally verified, and deterministically tested
— the way all software should be.