diff --git a/pingora-load-balancing/src/lib.rs b/pingora-load-balancing/src/lib.rs index c5adea30..4009dc13 100644 --- a/pingora-load-balancing/src/lib.rs +++ b/pingora-load-balancing/src/lib.rs @@ -77,12 +77,18 @@ impl Backend { /// Create a new [Backend] with `weight` 1. The function will try to parse /// `addr` into a [std::net::SocketAddr]. pub fn new(addr: &str) -> Result { + Self::new_with_weight(addr, 1) + } + + /// Creates a new [Backend] with the specified `weight`. The function will try to parse + /// `addr` into a [std::net::SocketAddr]. + pub fn new_with_weight(addr: &str, weight: usize) -> Result { let addr = addr .parse() .or_err(ErrorType::InternalError, "invalid socket addr")?; Ok(Backend { addr: SocketAddr::Inet(addr), - weight: 1, + weight, ext: Extensions::new(), }) // TODO: UDS