Go to file
GroovieGermanikus bcd3f77842
use GeyserFilter as factory
2023-12-21 07:52:37 +01:00
.github/workflows move mock code 2023-12-15 10:20:41 +01:00
ci add missing rust-version.sh 2023-12-15 10:13:35 +01:00
examples use GeyserFilter as factory 2023-12-21 07:52:37 +01:00
src use GeyserFilter as factory 2023-12-21 07:52:37 +01:00
.gitignore gitignore 2023-12-15 10:28:49 +01:00
Cargo.lock set yellowstone version 2023-12-20 09:42:29 +01:00
Cargo.toml add repo 2023-12-20 10:22:39 +01:00
LICENSE add license file 2023-12-20 09:45:34 +01:00
README.md update readme 2023-12-20 09:06:06 +01:00
rust-toolchain.toml set rust toolchain 2023-12-20 09:28:01 +01:00

README.md

Solana Geyser gRPC Multiplexing and Reconnect

This project provides multiplexing of multiple Yellowstone gRPC subscriptions based on Fastest Wins Strategy.

  • Multiple Futures get merged where the first next block that arrives will be emitted.
  • Reconnects are handled transparently inside the Futures.
  • No guarantees are made about if the messages are continuous or not.

Disclaimer: The library is designed with the needs of LiteRPC in mind yet might be useful for other projects as well.

The implementation is based on Rust Futures.

Please open an issue if you have any questions or suggestions -> New Issue.

Usage

An example how to use the library is provided in stream_blocks_mainnet.rs.

Known issues

  • Library does not support other data than Blocks very well.
  • Library needs messages to be in order and provide slot information to work properly.
  • The gRPC filtering options are very limited.