Key Components of The Adventure Layer’s Shard Architecture

a) Shard Manager: Responsible for managing the allocation of chain IDs across multiple shard nodes, as well as service registration and discovery.

b) Cross-Shard Communication System: Handles communication between multiple shard nodes.

c) Shared State Architecture: Implements state sharing across multiple shard nodes.

d) Shard Forking System: Each shard node is equipped with a Shard Forking System.

Nodes of The Shard:

L2 Replica Node:

Functions and Roles:

  • Data Storage: The L2 Replica Node stores a replica of the L2 blockchain data, ensuring data redundancy and security.
  • Optimized Querying: It handles data read and query requests, reducing the load on the main node and improving network response speed.
  • Increased Reliability: In the event of a main node failure, the Replica Node serves as a backup to ensure data continuity and accessibility.

Operation Mechanism:

  • Data Synchronization: Regularly synchronizes block data from the main node or other trusted source nodes to maintain the latest state.
  • Data Replication: Ensures data consistency and integrity by replicating block data and state information.

WASM-Supported Shard Node:

Functions and Roles:

  • Sharding Processing: Handles transactions and smart contract execution within specific shards, distributing the computational load of the overall network.
  • WASM Support: Supports WebAssembly (WASM) technology, allowing smart contracts to be written in multiple programming languages, enhancing development flexibility and efficiency.
  • Improved Scalability: Uses sharding technology to distribute computational tasks across multiple nodes, increasing overall network scalability.

Operation Mechanism:

  • Smart Contract Execution: Uses the WASM virtual machine to execute smart contracts, providing high performance and multi-language support.
  • State Synchronization: Maintains state synchronization with other shard nodes and main chain nodes, ensuring data consistency and integrity.

Comprehensive Advantages:

  • High Performance: The L2 Replica Node optimizes data reads and queries, reducing the main node’s load, while the WASM-supported Shard Node improves computational performance through sharding technology.
  • Flexibility: WASM support allows developers to write smart contracts in multiple languages, enhancing development flexibility and efficiency.
  • Reliability: Redundant data storage and synchronization mechanisms between nodes enhance the overall network’s reliability and data security.

This architecture design improves network scalability, performance, and development flexibility while ensuring data security and consistency, making it suitable for blockchain application scenarios that require efficient processing of large numbers of transactions and complex smart contracts.

Accessing the Nodes

To facilitate seamless interaction with these nodes, The Adventure Layer uses URL routing. Suppose our node domain is rpc-devnet.adventurelayer.xyz. The nodes can be accessed through the following URLs:

  • Replica Node:
    • URL: http://rpc-devnet.adventurelayer.xyz/node1/replica
    • Description: This URL routes requests to the L2 replica node, ensuring efficient data retrieval and redundancy.
  • Shard Node:
    • URL: http://rpc-devnet.adventurelayer.xyz/node1/shard
    • Description: This URL routes requests to the shard node that supports WASM, providing a robust environment for executing complex computations and smart contracts.

Unique Node Identifier:

In the context of The Adventure Layer, node1 serves as a placeholder for accessing specific nodes within the blockchain infrastructure. Depending on the context, replace node1 with the actual node identifier, such as node2. The path identifiers replica and shard direct requests to the L2 replica node and shard node, respectively.

Conclusion

The shard architecture of The Adventure Layer, with its L2 replica node and WASM-supported shard node, ensures a scalable and efficient blockchain gaming environment. The URL routing system simplifies node access, making it easier for developers and users to interact with the chain.