Home
Softono

Besu

Open source Apache-2.0 Java
1.8K
Stars
1.1K
Forks
165
Issues
57
Watchers
3 months
Last Commit

 About Besu

An enterprise-grade Java-based, Apache 2.0 licensed Ethereum client https://wiki.hyperledger.org/display/besu

Platforms

Web Self-hosted

Languages

Java

Need Help Installing Besu?

We provide expert installation service for this software. Our team will install, configure, and secure Besu on your server. plans start at just $30.

Besu Ethereum Client

CircleCI CodeQL CII Best Practices License Discord Twitter Follow

Download

Besu is an Apache 2.0 licensed, MainNet compatible, Ethereum client written in Java.

Useful Links

Issues

Besu issues are tracked in the github issues tab. See our guidelines for more details on searching and creating issues.

If you have any questions, queries or comments, Besu channel on Discord is the place to find us.

Besu Users

To install the Besu binary, follow these instructions.

Besu Developers

Development

Instructions for how to get started with developing on the Besu codebase. Please also read the wiki for more details on how to submit a pull request (PR).

Dependency Verification

This project uses Gradle dependency verification. When adding or updating dependencies, regenerate gradle/verification-metadata.xml with:

./gradlew --write-verification-metadata sha256 resolveSourceArtifacts

The resolveSourceArtifacts task ensures source JARs are included in the metadata, which is required for IDE sync (e.g. IntelliJ automatically downloads sources).

Profiling Besu

Besu supports performance profiling using Async Profiler, a low-overhead sampling profiler.
You can find setup and usage instructions in the Profiling Guide.

Profiling can help identify performance bottlenecks in block processing, transaction validation, and EVM execution.
Please ensure the profiler is run as the same user that started the Besu process.

Release Notes

Release Notes

Reference Tests and JSON Tracing

Besu includes support for running Ethereum reference tests and generating detailed EVM execution traces.

To learn how to run the tests and enable opcode-level JSON tracing for debugging and correctness verification, see the Reference Test Execution and Tracing Guide.