Skip to main content

Definitions

The following sub-sections of the Oyster Serverless protocol frequently reference specific actors, modules, and variables. For ease of reference, these commonly used terms are defined below.

  • Users: Users of the protocol who wish to execute computations in a serverless manner. These users can be individuals or other smart contracts.
  • Request Chain: A blockchain where users submit requests for serverless jobs, such as Ethereum, NEAR, Polkadot, or Avalanche.
  • Common Chain: A blockchain that manages the assignment and settlement of all jobs received from multiple request chains.
  • Relay Contract: A contract on Request Chain that receives user requests (to be relayed to Common Chain) and execute callbacks with the relayed back responses.
  • Subscription Relay Contract: A contract on the Request Chain that accepts user subscription requests, which are relayed periodically to the Common Chain, and executes callbacks with the responses received for each subscription instance.
  • Jobs Contract: A contract deployed on the Common Chain where all jobs are submitted for assignment to execution nodes, and job responses are sent back.
  • Escrow: An escrow is implemented in the Relay Contract to deposit funds from the user for the serverless job. Upon job completion, the deposits are released in accordance with protocol rules.
  • Epoch: An Epoch represents the time interval utilized by the gateway selection algorithm for each request job on the Request Chain. Gateway stakes are frozen for the duration of the specified epoch.
  • Execution Environment: It refers to the various enclave images used by Executors, tailored to different runtime environments, sandbox utilities, base operating systems, or system capabilities.