Smart Contract Requests
Serverless smart contract requests empower dApp contracts to seamlessly connect with serverless services, with both the service execution and payment processes fully managed onchain. Users can also directly submit requests to the Relay or Subscription Relay Contracts, which handle serverless function executions. These contracts act as the primary interface, providing a comprehensive connection between the User and the protocol.
The following provides an overview of the architecture that enables smart contracts to execute serverless functions, either as a single instance or through recurring subscriptions. This architecture facilitates seamless integration between onchain smart contracts and off-chain serverless computations, ensuring secure and automated processing across both environments.
Begin by examining the definitions to understand each component in the diagram above, then proceed through the subsequent sections in the order presented below.
📄️ 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.
📄️ Actors
In the Oyster Serverless protocol, the following entities interact with each other as part of the smart contract workflow:
📄️ Parameters
The following protocol parameters must be configured when the protocol is deployed:
🗃️ Workflow
4 items
📄️ Incentive Design
Unlike the Confidential VM protocol, where Providers are only paid when an Instance is rented by a User, the Serverless protocol requires a set of Instances to always be on standby, ensuring that Requests are served on-demand. These Instances function as shared resources, effectively being 'rented' by multiple applications simultaneously.