Struct sozu_lib::backends::BackendMap
source · pub struct BackendMap {
pub backends: HashMap<ClusterId, BackendList>,
pub max_failures: usize,
pub available: bool,
}
Fields§
§backends: HashMap<ClusterId, BackendList>
§max_failures: usize
§available: bool
Implementations§
source§impl BackendMap
impl BackendMap
pub fn new() -> BackendMap
pub fn import_configuration_state( &mut self, backends: &HashMap<ClusterId, Vec<Backend>> )
pub fn add_backend(&mut self, cluster_id: &str, backend: Backend)
pub fn remove_backend(&mut self, cluster_id: &str, backend_address: &SocketAddr)
pub fn close_backend_connection(&mut self, cluster_id: &str, addr: &SocketAddr)
pub fn has_backend(&self, cluster_id: &str, backend: &Backend) -> bool
pub fn backend_from_cluster_id( &mut self, cluster_id: &str ) -> Result<(Rc<RefCell<Backend>>, TcpStream), BackendError>
pub fn backend_from_sticky_session( &mut self, cluster_id: &str, sticky_session: &str ) -> Result<(Rc<RefCell<Backend>>, TcpStream), BackendError>
pub fn set_load_balancing_policy_for_cluster( &mut self, cluster_id: &str, lb_algo: LoadBalancingAlgorithms, metric: Option<LoadMetric> )
pub fn get_or_create_backend_list_for_cluster( &mut self, cluster_id: &str ) -> &mut BackendList
Trait Implementations§
source§impl Debug for BackendMap
impl Debug for BackendMap
Auto Trait Implementations§
impl Freeze for BackendMap
impl !RefUnwindSafe for BackendMap
impl !Send for BackendMap
impl !Sync for BackendMap
impl Unpin for BackendMap
impl !UnwindSafe for BackendMap
Blanket Implementations§
source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more