System Requirements
Recommended Specifications
| Component | Minimum | Recommended |
|---|---|---|
| CPU | 4 cores | 8+ cores |
| RAM | 8 GB | 16–32 GB |
| Storage | 500 GB SSD | 2 TB NVMe SSD |
| Network | 100 Mbps | 1 Gbps |
| OS | Ubuntu 22.04 LTS | Ubuntu 22.04 LTS |
Storage Notes
BESC Hyperchain produces a block every 3 seconds. With full archive mode (all historical state retained), storage grows at approximately 2–5 GB per day depending on transaction volume. Plan for at least 2 TB for long-term operation.
Java Runtime
Hyperledger Besu runs on the JVM. Install Java 21 (recommended) or Java 17:
bash
# Ubuntu 22.04
sudo apt update
sudo apt install -y openjdk-21-jdk
java -version
# → openjdk version "21.x.x"Memory Tuning
Besu performs best with:
- jemalloc for memory allocation (reduces heap fragmentation)
- Large heap — at minimum 8 GB, ideally 16 GB for archive nodes
bash
# Install jemalloc
sudo apt install -y libjemalloc-devFirewall
Expose the P2P port so other nodes can connect to you:
bash
# Allow P2P (required for syncing peers)
sudo ufw allow 30303/tcp
sudo ufw allow 30303/udp
# RPC port — only expose to trusted IPs or keep local
# (do NOT expose 8545 to the public internet without authentication)
sudo ufw allow from YOUR_NGINX_IP to any port 8545DANGER
Never expose the Besu RPC port (8545) directly to the public internet without nginx or another reverse proxy in front of it. Run nginx to terminate SSL and control access.
