Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rewritten sync_blocks actor to maximize utilization. #101

Merged
merged 12 commits into from
Apr 25, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
CODEOWNERS @brunoffranca

/node/actors/consensus/ @brunoffranca
/node/actors/bft/ @brunoffranca
/node/actors/network/ @pompon0

/node/libs/concurrency/ @pompon0
Expand Down
7 changes: 2 additions & 5 deletions docs/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,7 @@ The actor crates are where the vast majority of the work is done. Each of them m

- the `executor` crate is responsible for parsing the configuration parameters given by the user, and initializing the actors and the storage. It's basically the bootloader for the node. It also dispatches messages between the rest of the actors. They all send messages to the executor and it then converts and forwards the messages to the desired destination. This improves the encapsulation of the actors.

- the `network` crate which maintains a pool of outbound and inbound connections to other nodes.

- the `sync_blocks` crate implements a block syncing mechanism for nodes. It enables nodes to exchange blocks with each other in a peer-to-peer network, allowing them to keep a copy of the blockchain stored in their local storage up-to-date.
- the `network` crate which maintains a pool of outbound and inbound connections to other nodes. It also implements a syncing mechanism for nodes (for blocks, batches, attester signatures, etc).

### Library crates

Expand Down Expand Up @@ -44,8 +42,7 @@ This section provides a physical map of folders & files in this repository.

- `/bft`: The consensus actor.
- `/executor`: The actor orchestrator.
- `/network`: The networking actor.
- `/sync_blocks`: The block syncing actor.
- `/network`: The network actor.

- `/lib`: All the library crates used as dependencies of the actor crates above.

Expand Down
Loading
Loading