Asp .Net Core实现微服务:使用 Nacos 实现配置管理和服务发现

官方示例:https://kgithub.com/nacos-group/nacos-sdk-csharp

安装 Nuget 包

复制代码
dotnet add package nacos-sdk-csharp.AspNetCore
dotnet add package nacos-sdk-csharp.Extensions.Configuration

配置 appsettings.json

复制代码
{
    "Nacos": {
        "ServerAddresses": ["http://127.0.0.1:8848/"],
        //命名空间GUID,public默认没有
        "Namespace": "",
        "UserName": "nacos",
        "Password": "nacos",
        // 配置中心
        "Listeners": [
            {
                "Group": "dev",
                "DataId": "dotnet-nacos-service",
                "Optional": false
            }
        ],
        // 服务发现
        "ServiceName": "nacos-service",
        "GroupName": ".NET Core",
        // 权重
        "Weight": 100,
        "Metadata": {
            "aa": "bb",
            "cc": "dd"
        }
    }
}

添加服务和配置

复制代码
using Nacos.AspNetCore.V2;

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.

builder.Services.AddControllers();

// 注册服务到Nacos
builder.Services.AddNacosAspNet(builder.Configuration, section: "Nacos");

// 添加配置中心
builder.Configuration.AddNacosV2Configuration(builder.Configuration.GetSection("Nacos"));

var app = builder.Build();

// Configure the HTTP request pipeline.

app.UseAuthorization();

app.MapControllers();

app.Run();

测试

复制代码
using Microsoft.AspNetCore.Mvc;

namespace NacosDemo.Controllers
{
    [ApiController]
    [Route("[controller]")]
    public class WeatherForecastController : ControllerBase
    {
        private IConfiguration _configuration;

        public WeatherForecastController(IConfiguration configuration) => _configuration = configuration;

        [HttpGet]
        [Route("get")]

        public string Get() => _configuration["RedisConn"];
    }
}

服务发现

配置管理

postman

相关推荐
TongSearch5 小时前
使用 TongZK 做服务注册与服务发现
zookeeper·服务发现·国产化·东方通·tongzk
TunerT_TQ7 小时前
Valhalla 静态工程审阅 #012|Hertz 源码证据驱动评测【大厂开源基础设施特辑】
测试工具·微服务·开源·github·字节跳动·cloudwego·http框架
沉迷学习 日益消瘦8 小时前
20-综合实战:微服务部署
微服务·云原生·架构·kubernetes
执笔论英雄2 天前
【大模型推理】sglang PD 分离 : 6473 服务发现
服务发现·sglang
乐启国际旅行社有限公司2 天前
微服务高可用实战:Resilience4j熔断降级解决文旅节假日流量雪崩问题
微服务·云原生·架构
VortMall2 天前
出海引流运维双升级|VortMall微服务商城系统v1.3.12 升级更新
运维·微服务·facebook
zzzll11112 天前
Spring Cloud 微服务:从入门到实践
spring·spring cloud·微服务
summer_west_fish3 天前
企业架构的概念方法与实践
微服务·云原生·架构
小罗水3 天前
第11章 PostgreSQL + pgvector 向量检索
java·数据库·spring cloud·微服务
DBA_G4 天前
南大通用GBase 8s数据库新存储引擎核心能力二
数据库·微服务·架构