🪀 Nacos 微服务客户端插件(只读)

v0.1.0 版本
2022-03-19 版本更新时间
55 安装
5 star

🔰🔰🔰 为了方便维护和使用,推荐大家使用最新版的Nacos插件 https://www.workerman.net/plugin/50。我也会以后积极参与这个仓库的贡献。
🔰🔰🔰 为了方便维护和使用,推荐大家使用最新版的Nacos插件https://www.workerman.net/plugin/50。我也会以后积极参与这个仓库的贡献。
🔰🔰🔰 为了方便维护和使用,推荐大家使用最新版的Nacos插件https://www.workerman.net/plugin/50。我也会以后积极参与这个仓库的贡献。

简介

Total Downloads

Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。

官网手册:https://nacos.io

安装

composer require tinywan/nacos

使用

认证

$nacos = new Tinywan\Nacos\Nacos();
$login = $nacos->auth->login('nacos', 'nacos');
var_dump($login->getBody()->getContents());

Docker环境,添加环境变量 NACOS_AUTH_ENABLE=true(默认该值为false)

认证成功

若用户名和密码正确,返回信息如下

{
  "accessToken": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTY0NzUwMzcxMX0.m1p2WKSz1TNj3ftUgKSJuj7Yu4SdoQiV-k0rm6IbvFg",
  "tokenTtl": 18000,
  "globalAdmin": true,
  "username": "nacos"
}

认证失败

抛出 NacosAuthException 异常

配置

获取配置

$nacos = new Tinywan\Nacos\Nacos();
$response = $nacos->config->get('database', 'DEFAULT_GROUP');
if (false === $response) {
    var_dump($nacos->config->getMessage());
}

发布配置

$nacos = new Tinywan\Nacos\Nacos();
$content = [
    'listen' => 'http://0.0.0.0:8888',
    'transport' => 'tcp',
    'context' => [],
    'name' => 'webman-admin',
];
$response = $nacos->config->publish('server.php', 'DEFAULT_GROUP',json_encode($content));
if (false === $response) {
    var_dump($nacos->config->getMessage());
}

实例

注册实例

$nacos = new Tinywan\Nacos\Nacos();
$optional = [
    'groupName' => 'webman-group',
    'clusterName' => 'webman',
    'namespaceId' => 'webman',
    'weight' => 99.0,
    'metadata' => '',
    'enabled' => true,
    'ephemeral' => false
];
$response = $nacos->instance->register('127.0.0.1', 8888,'webman-admin',$optional);

效果图(可选)

截图