Holds components of a Zebra node.
Some, but not all, of these components are structured as Abscissa components, while the others are just ordinary structures. This is because Abscissa’s component and dependency injection models are designed to work together, but don’t fit the async context well.
- The inbound service handles requests from Zebra’s peers.
- Zebra mempool.
- An HTTP endpoint for metrics collection.
- The syncer downloads and verifies large numbers of blocks from peers to Zebra.
- A component owning the Tokio runtime.
- Tracing and logging infrastructure for Zebra.