springboot引入nacos

Nacos配置启动
报错

https://juejin.im/entry/5cd39b4de51d453a59418b8e

删除报错信息中的’/data/nacos/data/derby-data’目录,重新启动。
注册中心 服务发现
1.添加pom依赖

放在gulimall-common中,作为公共服务

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

2.在application.yml中添加nacos配置
在这里插入图片描述

image-20200406172113014
3.将服务注册的注册中心
在这里插入图片描述

image-20200406172249856
配置中心

com.atguigu.gulimall.coupon.GulimallCouponApplication

  • 一、如何使用nacos作为配置中心统一管理配置
  • 1.在common中引入依赖
  •     <groupId>com.alibaba.cloud</groupId>
    
  •     <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    
  • 2.创建配置文件 bootstrap.properties
  • spring.application.name=gulimall-coupon
  • spring.cloud.nacos.config.server-addr=192.168.0.100:8848
  • 3.在nacos客户端,给配置中心添加一个数据集
  • gulimall-coupon.properties
  • 格式为 应用名称.properties
  • 4.在 应用名称.properties中添加所需要的配置
  • 5.动态获取配置
  • 添加注解
  • @RefreshScope:动态刷新并获取配置
  • @Value("${配置项名称}")
  • 如果配置中心和当前应用的配置文件中配置了相同的配置项,优先使用配置中心的配置
  • 二、细节
  • 1.命名空间:作用 做配置隔离
  • 默认:public(保留空间);默认新增的所有配置都在public空间内
  • ①开发、测试、生产 分别配置
  • 在bootstrap.properties里配置想要使用的命名空间的配置项
  • spring.cloud.nacos.config.namespace=8a4f21ba-3ef2-4754-8b2f-ef3b3c2ed8c8
  • ②每一个微服务之间相互隔离,每一个微服务创建自己的命名空间,只加载自己命名空间下的所有配置
  • 2.配置集
  • 3.配置集ID
  • 4.配置分组
  • 一般实践:
  • 每个微服务创建自己的命名空间,使用配置分区区分环境:dev、test、prod

命名空间

  1. 在nacos界面添加新命名空间
  2. 默认使用public命名空间
  3. 修改使用命名空间
    在这里插入图片描述在这里插入图片描述

image-20200406181100706

image-20200406181128637
Feign远程调用

com.atguigu.gulimall.member.GulimallMemberApplication
在这里插入图片描述

image-20200406175610142
调用方

com.atguigu.gulimall.member.controller.MemberController
在这里插入图片描述在这里插入图片描述在这里插入图片描述

服务方

com.atguigu.gulimall.coupon.controller.CouponController
在这里插入图片描述

image-20200406175829343
网关
性能对比
在这里插入图片描述

引入common时排除数据库相关

@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})

报错
spring initializr error

取消代理即可

image-20200406221702649

包冲突

image-20200406221402005

网上查是gateway和web包冲突,解决方案:common的pom替换掉

<?xml version="1.0" encoding="UTF-8"?>



gulimall
com.atguigu.gulimall
0.0.1-SNAPSHOT

4.0.0

<artifactId>gulimall-common</artifactId>
<description>每一个微服务公共的依赖,bean,工具类等</description>

<dependencies>
    <!--        mybatis-plus-->
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>3.2.0</version>
    </dependency>

    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.8</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpcore -->
    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpcore</artifactId>
        <version>4.4.12</version>
    </dependency>


    <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>2.6</version>
    </dependency>

    <!--    导入mysql驱动    -->
    <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.17</version>
    </dependency>

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>2.5</version>
        <scope>provided</scope>
    </dependency>

    <!--        服务注册/发现-->
    <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>

    <dependency>
        <groupId>javax.validation</groupId>
        <artifactId>validation-api</artifactId>
        <version>2.0.1.Final</version>
    </dependency>


</dependencies>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2.1.0.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值