当前位置: 首页 > news >正文

Hyperf 使用配置中心 - nacos配置中心

安装



composer require hyperf/config-center
composer require hyperf/config-nacos

配置

配置 config/autoload/service.php

<?php

return [
    'enable' => [
        // 开启服务发现
        'discovery' => true,
        // 开启服务注册
        'register' => true,
    ],
    // 服务消费者相关配置
    'consumers' => [],
    // 服务提供者相关配置
    'providers' => [],
    // 服务驱动相关配置
    'drivers' => [
        'consul' => [
            'uri' => 'http://127.0.0.1:8500',
            'token' => '',
            'check' => [
                'deregister_critical_service_after' => '90m',
                'interval' => '1s',
            ],
        ],
        'nacos' => [
            // nacos server url like https://nacos.hyperf.io, Priority is higher than host:port
            // 'url' => '',
            // The nacos host info
            'host' => '127.0.0.21,
            'port' => 8848,
            // The nacos account info
            'username' => null,
            'password' => null,
            'guzzle' => [
                'config' => null,
            ],
            'group_name' => 'api',
            'namespace_id' => '111123',
            'heartbeat' => 5,
            'ephemeral' => false, // 是否注册临时实例
        ],
    ],
];

config/autoload/nacos.php

同样配置服务器信息。

配置config center

<?php

declare(strict_types=1);
/**
 * This file is part of Hyperf.
 *
 * @link     https://www.hyperf.io
 * @document https://hyperf.wiki
 * @contact  group@hyperf.io
 * @license  https://github.com/hyperf/hyperf/blob/master/LICENSE
 */
use Hyperf\ConfigCenter\Mode;

return [
    'enable' => (bool) env('CONFIG_CENTER_ENABLE', true),
    'driver' => env('CONFIG_CENTER_DRIVER', 'nacos'),
    'mode' => env('CONFIG_CENTER_MODE', Mode::PROCESS),
    'drivers' => [
        'nacos' => [
            'driver' => Hyperf\ConfigNacos\NacosDriver::class,
            'merge_mode' => Hyperf\ConfigNacos\Constants::CONFIG_MERGE_OVERWRITE,
            'interval' => 3,
            'default_key' => 'nacos_config',
            'listener_config' => [
                // dataId, group, tenant, type, content
                'nacos_config' => [
                    'tenant' => 'public', // corresponding with service.namespaceId
                    'data_id' => 'test',
                    'group' => 'DEFAULT_GROUP',
                ],
                'nacos_config.data' => [
                    'data_id' => 'test',
                    'group' => 'DEFAULT_GROUP',
                    'type' => 'txt',
                ],
            ],
        ],
    ],
];

这个配置描述的是nacos 上配置管理中 data_id 叫test, 类型是txt,命名空间是DEFAULT_GROUP。

nacos_config 与 nocos_config.data关联,这里租户 (tenant) 和命名空间(namespace)是一样的,里面自己看创建时group是填的什么。

使用

config('nacos_config') 可以获取nacos_config对应的配置

相关文章:

  • 力扣hot100题解(python版10-12题)
  • Windows如何新建一个需要管理员权限才能删除的文件夹
  • Vue | (四)使用Vue脚手架(上) | 尚硅谷Vue2.0+Vue3.0全套教程
  • IDEA自定义类注释及方法注释模板
  • 智慧城市的新宠儿:会“思考”的井盖
  • 分布式锁的应用场景及实现
  • [晓理紫]每日论文分享(有中文摘要,源码或项目地址)--强化学习、模仿学习、机器人
  • Jmeter 学习目录(0)
  • 《Solidity 简易速速上手小册》第9章:DApp 开发与 Solidity 集成(2024 最新版)
  • Postgresql源码(121)事务状态中childXids的作用
  • 【ArcGIS微课1000例】0105:三维模型转体模型(导入sketchup转多面体为例)
  • 【Spring Boot 3】【JPA】一对一双向关联
  • 【Git工具实战】实用真实 Git 开发工作流程
  • Sora背后的论文(1):使用 lstms 对视频展现进行无监督学习
  • 《springcloud alibaba》 一 Openfeign
  • 2024年刷题记录
  • 【51单片机】直流电机驱动(PWM)(江科大)
  • 备战蓝桥杯—— 双指针技巧巧答链表1
  • vue3组件通信方式汇总
  • 【高德地图】Android高德地图初始化定位并显示小蓝点
  • 匈牙利国会通过退出国际刑事法院的决定
  • “五一”假期,又有多地将向社会开放政府机关食堂
  • 黄永年:说狄仁杰的奏毁淫祠
  • 王文涛会见德国汽车工业协会主席穆勒
  • 今年3月全国查处违反中央八项规定精神问题16994起
  • 因高颜值走红的女通缉犯出狱后当主播自称“改邪归正”,账号已被封