#nacos #nacos-api #临时 #服务 #个人 #分支 #配置

clia-nacos-api

个人临时 Nacos API,从 Squbirreland/nacos-api 分支。

1 个不稳定版本

0.2.2 2022年4月2日

#1578 in 网页开发

Apache-2.0

43KB
951

clia-nacos-api

个人临时 Nacos API,从 Squbirland/nacos-api 分支。

NACOS API

支持

服务

  • 注册实例
  • 注销实例
  • 修改实例
  • 查询实例列表
  • 查询实例详情
  • 心跳感应
  • 创建服务
  • 删除服务
  • 修改服务
  • 查询服务详情
  • 查询服务列表
  • 查询系统负载
  • 查询服务详情

配置

  • 上传配置
  • 获取配置
  • 删除配置
  • 监听配置

使用方法

注册当前实例

use nacos_api::{NacosClient, NacosConfig, ServerConfig};

#[tokio::main]
async fn main() {
    let nacos = NacosConfig::new("http", "192.168.0.132", 8848);
    let client = NacosClient::new(
        &nacos,
        ServerConfig::new("127.0.0.1", 8080, "test"),
    );

    client.register(&None).await;
    loop {}
}

尝试获取其他服务器地址

pub async fn try_req_server() {
    use nacos_api::{NacosClient, NacosConfig, ServerConfig};

    let nacos = NacosConfig::new("http", "192.168.0.132", 8848);
    let client = NacosClient::new(
        &nacos,
        ServerConfig::new("127.0.0.1", 8080, "test"),
    );

    let addr = client.get_addr_simple("test").await?;
    assert!("http://127.0.0.1:8080", addr.as_str());
}

监听配置中心

use nacos_api::{NacosConfigClient, NacosConfigApi, DeployConfig, NacosConfig};

#[tokio::main]
async fn main() {
    let client = NacosConfigClient::new("test_data", "test_grep", None);
    let nacos_config = NacosConfig::new("http", "192.168.0.132", 8848);
    // listen the nacos configs center
    client.listen_config(
        &nacos_config,
        |s| { println!(" perceive the configs changed to > {}", s) },
        10
    ).await;
    // make the program keep alive
    loop {}
}

声明

development by nacos v2.0.1

依赖

~7–20MB
~305K SLoC