Skip to main content

aiway_protocol/gateway/
service.rs

1use serde::{Deserialize, Serialize};
2
3/// 服务信息
4#[derive(Debug, Clone, Default, Serialize, Deserialize)]
5pub struct Service {
6    /// 服务名
7    pub name: String,
8    /// 服务节点,支持域名或IP:PORT
9    pub nodes: Vec<String>,
10    /// 负载均衡策略
11    #[serde(default = "LbStrategy::default")]
12    pub lb: LbStrategy,
13}
14#[derive(Debug, Clone, Default, Serialize, Deserialize)]
15pub enum LbStrategy {
16    /// 随机
17    #[serde(rename = "random")]
18    #[default]
19    Random,
20    /// 轮询
21    #[serde(rename = "random_robin")]
22    RoundRobin,
23}