nacos与spring cloud

前言

从微服务兴起后,服务治理问题已经成为其最大问题。起初有eureka,zookeeper、consul同台竞争,本人也使用过eureka+config-server作为注册中心和配置中心,使用上没有问题,就是涉及到一些业务场景,比较麻烦,如配置动态修改、配置发生变更后,config-server要重启。使用阿里开源的nacos后,再也不想用其他工具了。

nacos 本身自带了注册中心、配置中心功能。可以单点、集群启动,完整的生态圈,阿里开源的产品较多,质量也较高,对于微服务的产品:分部署事务seata、服务流控sentinel集成度都很好。以此奉上官网nacos生态图

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-onnh5hRO-1625477292956)(img/nacos生态.png)]

1 软件下载

2.0.1 1.4.2

配置

nacos数据持久化支持内存数据库与mysql数据库,默认内存数据库,如果需要配置mysql数据库,请修改conf/application.properties,然后初始化数据库脚本

spring.datasource.platform=mysql

### Count of DB:
db.num=1

### Connect URL of DB:
db.url.0=jdbc:mysql://10.0.0.0:10001/lcfc_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=root!

集群设置

startup.sh

set "JAVA_OPT=%JAVA_OPT% -Dnacos.server.ip=10.159.133.176"

修改conf/cluster.conf

10.159.110.177:8848
10.159.110.178:8848

查看

nacos 集群访问需要用NG来做负载均衡 NG配置如下

upstream nacos_server{
                server 10.1.2.37:8848;
                server 10.1.2.96:8848;
                server 10.1.2.56:8848;
        }

location /nacos {
                proxy_set_header Host $http_host;
                proxy_pass http://nacos_server;
        }

记住一定要加入proxy_set_header Host $http_host,不然会报400的错

访问 localhost:19200,用户名/密码:nacos/nacos

配置查看
nacospeizhi

查看服务

在这里插入图片描述

集群查看
在这里插入图片描述

spring cloud集成nacos

maven依赖

 <dependency>
          <groupId>com.alibaba.cloud</groupId>
          <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
      </dependency>
      <dependency>
          <groupId>com.alibaba.cloud</groupId>
          <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
      </dependency>

bootstrap.yml 增加nacos配置

spring:
  cloud:
    nacos:
      discovery:
        server-addr: 10.1.2.37:19200
      config:
        server-addr: 10.1.2.37:19200
        file-extension: yml
        refresh-enabled: true
        shared-configs:
          - data-id: application.${spring.cloud.nacos.config.file-extension}
            group: DEFAULT_GROUP
            refresh: true
          - data-id: ${spring.application.name}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
            group: DEFAULT_GROUP
            refresh: true

main class 增加 @EnableDiscoveryClient

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

woniyu123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值