Skip to content

resonatehq/resonate-faas-cloudflare-ts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@resonatehq/cloudflare

@resonatehq/cloudflare is the official binding to deploy Distributed Async Await, Resonate's durable execution framework, to Cloudflare Workers. Run long-running, stateful applications on short-lived, stateless infrastructure.

Examples:

Architecture

When the Durable Function awaits a pending Durable Promise (for example on yield* context.rpc() or context.sleep), the Cloudflare Workers function terminates. When the Durable Promise completes, the Resonate Server resumes the Durable Function by invoking the Cloudflare Workers function again.

function* factorial(context: Context, n: number): Generator {
  if (n <= 0)  { 
    return 1;
  }
  else {
    return n * (yield* context.rpc(factorial, n - 1));
  }
}

Illustration of executing factorial(2) on Cloudflare Workers:

Resonate on Serverless

Quick Start

npm install @resonatehq/cloudflare

See Cloudflare Workers documentation to learn how to develop and deploy Cloudflare Workers and see Resonate's Cloudflare Workers examples for a step by step tutorial: