Added gzip compression support

This commit is contained in:
Linus Kendall 2022-07-11 11:55:18 +01:00
parent d8dd027744
commit 952e496e9c
3 changed files with 890 additions and 1054 deletions

1935
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -24,7 +24,7 @@ solana-logger = "=1.10.25"
solana-metrics = "=1.10.25"
solana-sdk = "=1.10.25"
tonic = "0.6"
tonic = { version = "0.6", features = ["compression"] }
prost = "0.9"
futures-core = "0.3"
futures-util = "0.3"
@ -35,7 +35,7 @@ async-stream = "0.2"
rand = "0.8"
[build-dependencies]
tonic-build = "0.6"
tonic-build = { version = "0.6", features = ["compression"] }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

View File

@ -182,10 +182,13 @@ impl GeyserPlugin for Plugin {
let highest_write_slot = Arc::new(AtomicU64::new(0));
let service =
geyser_service::Service::new(config.service_config, highest_write_slot.clone());
let (server_exit_sender, mut server_exit_receiver) = broadcast::channel::<()>(1);
let server_broadcast = service.sender.clone();
let server = geyser_proto::accounts_db_server::AccountsDbServer::new(service);
let server = geyser_proto::accounts_db_server::AccountsDbServer::new(service)
.accept_gzip()
.send_gzip();
let runtime = tokio::runtime::Runtime::new().unwrap();
runtime.spawn(Server::builder().add_service(server).serve_with_shutdown(
addr,