lite-rpc/src/cli.rs

31 lines
1.2 KiB
Rust
Raw Normal View History

2023-01-09 23:06:24 -08:00
use crate::{
2023-01-10 07:45:30 -08:00
DEFAULT_CLEAN_INTERVAL_MS, DEFAULT_FANOUT_SIZE, DEFAULT_RPC_ADDR, DEFAULT_TX_BATCH_INTERVAL_MS,
2023-01-10 06:59:37 -08:00
DEFAULT_TX_BATCH_SIZE, DEFAULT_WS_ADDR,
2023-01-09 23:06:24 -08:00
};
use clap::Parser;
2022-11-30 07:56:41 -08:00
#[derive(Parser, Debug)]
2022-12-16 18:35:49 -08:00
#[command(author, version, about, long_about = None)]
2022-11-30 07:56:41 -08:00
pub struct Args {
2022-12-16 18:35:49 -08:00
#[arg(short, long, default_value_t = String::from(DEFAULT_RPC_ADDR))]
pub rpc_addr: String,
#[arg(short, long, default_value_t = String::from(DEFAULT_WS_ADDR))]
pub ws_addr: String,
2023-01-09 22:40:43 -08:00
#[arg(short = 'l', long, default_value_t = String::from("127.0.0.1:8890"))]
2023-01-05 02:54:00 -08:00
pub lite_rpc_http_addr: String,
2023-01-09 22:40:43 -08:00
#[arg(short = 's', long, default_value_t = String::from("127.0.0.1:8891"))]
2023-01-05 02:54:00 -08:00
pub lite_rpc_ws_addr: String,
2023-01-09 22:40:43 -08:00
/// batch size of each batch forward
2023-01-09 23:06:24 -08:00
#[arg(short = 'b', long, default_value_t = DEFAULT_TX_BATCH_SIZE)]
2023-01-09 22:40:43 -08:00
pub tx_batch_size: usize,
2023-01-10 07:45:30 -08:00
/// tpu fanout
#[arg(short = 'f', long, default_value_t = DEFAULT_FANOUT_SIZE) ]
pub fanout_size: u64,
2023-01-09 22:40:43 -08:00
/// interval between each batch forward
2023-01-09 23:06:24 -08:00
#[arg(short = 'i', long, default_value_t = DEFAULT_TX_BATCH_INTERVAL_MS)]
2023-01-09 22:40:43 -08:00
pub tx_batch_interval_ms: u64,
2023-01-10 06:56:41 -08:00
/// interval between clean
2023-01-10 06:59:37 -08:00
#[arg(short = 'i', long, default_value_t = DEFAULT_CLEAN_INTERVAL_MS)]
2023-01-10 06:56:41 -08:00
pub clean_interval_ms: u64,
}