Configs2026年5月14日·1 分钟阅读

Reth — Modular Ethereum Execution Client Written in Rust

Reth is an Ethereum execution layer client implemented in Rust by Paradigm. It focuses on modularity, performance, and contributor-friendliness. Reth can run full and archive nodes, supports mainnet forking, and is designed so individual components (networking, EVM, storage) can be reused as libraries in custom infrastructure.

Agent 就绪

这个资产会安全暂存

这个资产会先安全暂存。复制的指令会要求 Agent 读取暂存文件,并在激活脚本、MCP 配置或全局配置前先确认。

Stage only · 17/100策略:需暂存
Agent 入口
任意 MCP/CLI Agent
类型
CLI Tool
安装
Stage only
信任
信任等级:Established
入口
Reth
安全暂存命令
npx -y tokrepo@latest install 87436ecf-4f90-11f1-9bc6-00163e2b0d79 --target codex

先暂存文件;激活前需要读取暂存 README 和安装计划。

Introduction

Reth is a next-generation Ethereum execution client written in Rust, developed by Paradigm. It aims to be the most performant and modular client for running Ethereum nodes. Reth leverages Rust's safety guarantees and concurrency model to deliver fast sync speeds, low resource usage, and a codebase that is easy for contributors to extend.

What Reth Does

  • Syncs Ethereum mainnet and testnets as a full or archive execution client
  • Pairs with any consensus client (Lighthouse, Prysm, Teku) via the Engine API
  • Exposes standard JSON-RPC, WebSocket, and IPC endpoints for DApp backends
  • Provides modular crate architecture so EVM, p2p, and storage layers can be reused independently
  • Supports custom ExEx (Execution Extensions) for building indexers and analytics on top of the node

Architecture Overview

Reth is composed of dozens of Rust crates organized by responsibility: reth-primitives for types, reth-provider for database access, reth-network for devp2p networking, reth-evm for EVM execution via revm, and reth-rpc for the API layer. The database backend uses MDBX for fast state reads. The pipeline architecture processes stages (headers, bodies, execution, hashing) in sequence during sync, then switches to live mode. ExEx hooks let developers react to every block without forking the client.

Self-Hosting & Configuration

  • Build from source with cargo install --path bin/reth or pull the official Docker image
  • Configure via CLI flags or a TOML config file for network, database path, and RPC settings
  • Enable --full for full node or --debug.tip for archive access
  • Set up an ExEx to stream new blocks, transactions, or state changes to external systems
  • Pair with a consensus client and configure JWT authentication for the Engine API

Key Features

  • Parallel pipeline stages reduce initial sync time compared to older clients
  • ExEx (Execution Extensions) enable custom on-chain data processing without forking
  • Modular crate design lets developers embed EVM or networking into their own Rust projects
  • Memory-mapped storage via MDBX keeps disk I/O efficient for large state
  • Active development with frequent releases and a contributor-friendly codebase

Comparison with Similar Tools

  • Geth — The reference Go implementation with the largest operator base; Reth offers better modularity and Rust performance
  • Erigon — Go client optimized for disk efficiency; Reth provides a more modular crate architecture
  • Nethermind — .NET client with built-in analytics; Reth targets the Rust ecosystem
  • Besu — Java client for enterprise use; Reth focuses on public network performance and developer extensibility

FAQ

Q: Is Reth ready for production mainnet use? A: Reth reached stable release status and is used in production by multiple infrastructure operators. Always verify compatibility with your consensus client.

Q: How does Reth compare to Geth on sync speed? A: Reth's parallel pipeline and Rust performance generally result in faster initial sync times, especially on modern hardware with NVMe storage.

Q: What is an ExEx? A: Execution Extensions are hooks that receive every block's execution output in real-time, allowing developers to build indexers, bridges, or analytics without modifying the client.

Q: Can I use Reth as a library? A: Yes. Individual crates like reth-evm and reth-provider can be imported into your own Rust project.

Sources

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产