Run a Node (Advanced) - FAQ
Note: Thanks to your contributions, cycle I of our TestNet Phase 3 journey has officially wrapped up! Now we're one step closer to onboarding the world to Bitcoin. Stay tuned for the next steps!
What's the hardware requirements for running nodes?
We have validator/full storage node/light node to run. The hardware requirements are listed below:
Validator | Light Node | Full/Bridge Node | |
---|---|---|---|
Memory | 8 GB RAM | 500 MB RAM | 16 GB RAM |
CPU | 8 cores | Single Core | 8 Cores |
Disk | 1 TB SSD Storage | 40 GB SSD Storage | 10 TB SSD Storage |
Bandwidth | 1 Gbps Upload/Download | 0.1 Mbps Upload/Download | 1 Gbps Upload/Download |
Are batches supported? Is there a limit on batch requests?
We don’t support batch requests.
Are WS connections supported? What is available for WS connections?
Yes, WS connections are supported.
First, initialize your own light/full node. Assume you have finished Run a Node (Advanced) step by step.
After the node initialization, you should export the environment variables:
The node RPC could be accessed by the websocket
protocol directly.
How many different paths does the node serve?
Please refer to Nubit DA Node APIs.
What are the suggested caching rules for each RPC method?
The following methods could be cached / saved to database:
Blob: Get, GetAll, GetProof, Included
Header: GetBtcHeight, GetByHash, GetByHeight, GetHeightRangeAtBtcHeight, GetRangeByHeight
Share: GetEDS, GetShare, GetSharesByNamespace, SharesAvailable
Other methods are not recommended to be cached since they will change with time or be light enough to be not cached.
What is the best method to get the latest block and check that the node is healthy and in sync?
Use header.SyncState
, this method will return the latest block height in its responded field height
.
Use header.SyncWait
to check whether the node is healthy or not. This method will block until the node is synced to network latest head.
What are the heaviest RPC methods? How much time does it take node to respond to request with such method?
Blob: Get, GetAll, GetProof, Included (~1s)
Header: GetHeightRangeAtBtcHeight (~2s)
Is archive node provision a requirement?
Yes, the full node (archive node) is the only node that stores all data in the network.
Are there snapshots available for full/archive nodes?
Our mainnet/testnet is not online yet and there is no need to sync the snapshot now.
What is the role of the consensus-node (validator node)?
The consensus-node is a validator node that does not produce blocks. It needs to be run as a data source for the bridge. It can also produce blocks, but currently, we have not delegated tokens to these validators.
Does the DA node need to provide RPC to users?
It is not necessary to provide RPC to users. The node's RPC is for internal use. Users can run their own light nodes for accessing RPC.
How do bridge nodes handle P2P connections for light node users?
Bridge nodes, when exposed to the public network, can automatically provide P2P connections to light node users.
Last updated