Skip to content

Commit 0ad288c

Browse files
committed
update parachain rpc page
1 parent 8485f32 commit 0ad288c

File tree

1 file changed

+31
-37
lines changed

1 file changed

+31
-37
lines changed

node-infrastructure/run-a-node/parachain-rpc.md

Lines changed: 31 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -18,22 +18,29 @@ Through the parachain RPC (WebSocket port 9944, HTTP port 9933), your node acts
1818

1919
RPC nodes serving production traffic require robust hardware:
2020

21-
- **CPU**: 8+ cores (16+ cores for high traffic)
22-
- **Memory**: 64 GB RAM minimum (128 GB recommended for high traffic)
23-
- **Storage**:
24-
- **Archive node**: Storage varies by parachain. Using snapshots, system parachain totals are: Asset Hub (~1.2 TB), Bridge Hub (~1.1 TB), Collectives (~1 TB), People Chain (~900 GB), Coretime (~900 GB). For non-system parachains, check the [snapshot sizes](https://snapshots.polkadot.io/){target=\_blank} and add ~822 GB for the relay chain
25-
- **Pruned node**: 200+ GB NVMe SSD (with pruning enabled for both parachain and relay chain)
26-
- Fast disk I/O is critical for query performance
21+
- **CPU**: 8+ cores; 16+ cores for high traffic
22+
- **Memory**: 64 GB RAM minimum; 128 GB recommended for high traffic
23+
- **Storage**: Storage requirements vary by parachain. Fast NVMe I/O is critical for RPC query performance
24+
- **System parachains**: [Snapshots](https://snapshots.polkadot.io/){target=\_blank} _may_ be available
25+
- **Archive node**: Using snapshots, expected storage requirements (including ~822 GB for the pruned relay chain) are:
26+
- **Asset Hub**: ~1.2 TB
27+
- **Bridge Hub**: ~1.1 TB
28+
- **Collectives**: ~1 TB
29+
- **People Chain**: ~900 GB
30+
- **Coretime**: ~900 GB
31+
<!-- TODO-ERIN: this makes no sense to me 👇 -->
32+
- **Pruned node**: 200+ GB for both parachain and relay chain
33+
- **Non-system parachains**: Consult the parachain team or documentation, then add ~822 GB for the pruned relay chain
2734
- **Network**:
2835
- Public IP address
29-
- 1 Gbps connection (for high traffic scenarios)
3036
- Stable internet connection with sufficient bandwidth
37+
- 1 Gbps connection for high traffic scenarios
38+
- Consider DDoS protection and rate limiting for production deployments
3139
- Open ports:
3240
- 30333 (parachain P2P)
3341
- 30334 (relay chain P2P)
3442
- 9944 (Polkadot SDK WebSocket RPC)
3543
- 9933 (Polkadot SDK HTTP RPC)
36-
- Consider DDoS protection and rate limiting for production deployments
3744

3845
!!! note
3946
For development or low-traffic scenarios, you can reduce these requirements proportionally. Consider using a reverse proxy ([nginx](https://nginx.org/){target=\_blank}, [Caddy](https://caddyserver.com/){target=\_blank}) for production deployments.
@@ -87,7 +94,7 @@ System parachain details:
8794
8895
1. Download your parachain's chain specification as described in [Obtain the Chain Specification](#obtain-the-chain-specification).
8996

90-
2. (Optional but recommended) Download pre-synced snapshots from the [Snapshot Provider](https://snapshots.polkadot.io/){target=\_blank} to cut initial sync time from days to hours:
97+
2. (Optional but recommended) Download pre-synced [snapshots](https://snapshots.polkadot.io/){target=\_blank} to cut initial sync time from days to hours:
9198

9299
!!! note
93100
Snapshots are available for system parachains and the Polkadot relay chain. For other parachains, check with the parachain team for snapshot availability or sync from genesis.
@@ -99,25 +106,12 @@ System parachain details:
99106
mkdir -p my-node-data/chains/polkadot/db
100107
```
101108

102-
2. Choose between archive (complete history; ~71 GB for People Chain) or pruned (recent state; TODO: ERIN) snapshots of the parachain and set the snapshot URL accordingly:
103-
104-
=== "Archive"
105-
106-
```bash
107-
# Check https://snapshots.polkadot.io/ for the latest snapshot URL
108-
export SNAPSHOT_URL_PARACHAIN="https://snapshots.polkadot.io/polkadot-people-rocksdb-archive/INSERT_LATEST"
109-
```
110-
111-
=== "Pruned"
112-
113-
```bash
114-
# Check https://snapshots.polkadot.io/ for the latest snapshot URL
115-
export SNAPSHOT_URL_PARACHAIN="https://snapshots.polkadot.io/polkadot-people-rocksdb-prune/INSERT_LATEST"
116-
```
117-
118-
3. Use `rclone` to download and save the parachain snapshots:
109+
2. Download and save the archive parachain snapshot:
119110

120111
```bash
112+
# Check https://snapshots.polkadot.io/ for the latest snapshot URL
113+
export SNAPSHOT_URL_PARACHAIN="https://snapshots.polkadot.io/polkadot-people-rocksdb-archive/INSERT_LATEST"
114+
121115
rclone copyurl $SNAPSHOT_URL_PARACHAIN/files.txt files.txt
122116
rclone copy --progress --transfers 20 \
123117
--http-url $SNAPSHOT_URL_PARACHAIN \
@@ -136,7 +130,7 @@ System parachain details:
136130
- **`--retries-sleep 10s`**: Waits 10 seconds between retry attempts
137131
- **`--size-only`**: Only transfers if sizes differ (prevents unnecessary re-downloads)
138132

139-
4. Repeat the process for the pruned relay chain snapshot (~822 GB):
133+
3. Repeat the process for the pruned relay chain snapshot:
140134

141135
```bash
142136
# Check https://snapshots.polkadot.io/ for the latest snapshot URL
@@ -242,7 +236,7 @@ System parachain details:
242236

243237
2. Download your parachain's chain specification as described in [Obtain the Chain Specification](#obtain-the-chain-specification).
244238
245-
3. Create user and directory structures using the following commands:
239+
3. Create user and directory structures:
246240
247241
```bash
248242
# Create a dedicated user
@@ -426,57 +420,57 @@ Use the following commands to manage your node:
426420

427421
=== "Docker"
428422

429-
- View node logs:
423+
- **View node logs**:
430424

431425
```bash
432426
docker logs -f people-chain-rpc
433427
```
434428

435-
- Stop container:
429+
- **Stop container**:
436430

437431
```bash
438432
docker stop people-chain-rpc
439433
```
440434

441-
- Start container:
435+
- **Start container**:
442436

443437
```bash
444438
docker start people-chain-rpc
445439
```
446440

447-
- Remove container:
441+
- **Remove container**:
448442

449443
```bash
450444
docker rm people-chain-rpc
451445
```
452446

453447
=== "systemd"
454448

455-
- Check status
449+
- **Check status**:
456450

457451
```bash
458452
sudo systemctl status people-chain-rpc
459453
```
460454

461-
- View node logs:
455+
- **View node logs**:
462456

463457
```bash
464458
sudo journalctl -u people-chain-rpc -f
465459
```
466460

467-
- Stop service:
461+
- **Stop service**:
468462

469463
```bash
470464
sudo systemctl stop people-chain-rpc
471465
```
472466

473-
- Enable service:
467+
- **Enable service**:
474468

475469
```bash
476470
sudo systemctl enable people-chain-rpc
477471
```
478472

479-
- Start service:
473+
- **Start service**:
480474

481475
```bash
482476
sudo systemctl start people-chain-rpc

0 commit comments

Comments
 (0)