mobc-tonic

Crates.iomobc-tonic
lib.rsmobc-tonic
version0.2.4
sourcesrc
created_at2021-03-14 18:56:36.605433
updated_at2021-03-19 02:28:33.986752
descriptionA connection pool for tonic GRPC client.
homepagehttps://github.com/tyrchen/mobc-tonic
repositoryhttps://github.com/tyrchen/mobc-tonic
max_upload_size
id368846
size40,075
Tyr Chen (tyrchen)

documentation

https://docs.rs/mobc-tonic

README

mobc-tonic

A connection pool for tonic GRPC client.

Usage:

First, instantiate the implementation for your client:

use mobc_tonic::{
    instantiate_client_pool, ClientConfig, Error, InterceptorFn, Manager, MobcTonicError, Pool,
};
use tonic::transport::{Certificate, Channel, ClientTlsConfig, Identity};

use gen::greeter_client::GreeterClient;

instantiate_client_pool!(GreeterClient<Channel>);

This will generate the connection pool manager for your GRPC client.

Then you could use the generated ClientPool:

let client_config: ClientConfig =
    toml::from_str(include_str!("fixtures/client_with_cert.toml")).unwrap();

let pool = ClientPool::new(client_config);
let mut client = pool.get().await.unwrap();
let reply = client
    .say_hello(HelloRequest {
        name: "Tyr".to_owned(),
    })
    .await
    .unwrap()
    .into_inner();

License

mobc-tonic is distributed under the terms of MIT.

See LICENSE for details.

Copyright 2021 Tyr Chen

Commit count: 9

cargo fmt