尚硅谷——谷粒商城项目开发记录——2021.11.20

概念:

1.SpringCloud Alibaba:

  • 简介:

    • Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。
    • Spring Cloud Alibaba
  • 优势:
    • 性能强悍,设计合理,项目开源
  • 技术搭配方案:
    • SpringCloud Alibaba - Nacos

      • 注册中心(服务发现/注册)
    • SpringCloud Alibaba - Nacos
      • 配置中心(动态配置管理)
    • SpringCloud - Ribbon
      • 负载均衡
    • SpringCloud - Feign
      • 声明式 HTTP 客户端(调用远程服务)
    • SpringCloud Alibaba - Sentinel
      • 服务容错(限流、降级、熔断)
    • SpringCloud - Gateway
      • API 网关(webflux 编程模式)
    • SpringCloud - Sleuth
      • 调用链监控
    • SpringCloud Alibaba - Seata
      • 原Fescar,即分布式事务解决方案
  • 依赖(注意版本):
    • 1.5.x 版本适用于 Spring Boot 1.5.x
    • 2.0.x 版本适用于 Spring Boot 2.0.x
    • 2.1.x 版本适用于 Spring Boot 2.1.x
          <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>
      

2.Nacos注册中心:

  • Nacos是阿里巴巴开源的一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
  • 文档地址:
    • 文档地址
  • 下载nacos-server:
    • 下载nacos
  • 启动:
    • 双击 bin 中的 startup.cmd 文件
    • 访问 http://localhost:8848/nacos/
    • 默认账号密码:nacos/nacos进行登录


3.如何使用Nacos作为配置中心统一管理配置:

  • (1).引入依赖
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
  • (2).创建一个bootstrap.properties。
spring.application.name=gulimall-coupon
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
  • (3).需要给配置中心默认添加一个叫 数据集(Data Id)gulimall-coupon.properties。默认规则,应用名.properties
  • (4).给应用名.properties 添加任何配置
  • (5).动态获取配置。
@RefreshScope:动态获取并刷新配置
@Value("${配置项的名}"):获取到配置。
如果配置中心和当前应用的配置文件中都配置了相同的项,优先使用配置中心的配置。

4.细节:

  • (1).命名空间, 配置隔离;

    • 默认: public(保留空间);默认新增的所有配置都在public空间。
    • 开发,测试,生产: 利用命名空间来做环境隔离。
    • 注意:
      • 在bootstrap.properties;配置上,需要使用哪个命名空间下的配置

        spring.cloud.nacos.config.namespace=9de62e44-cd2a-4a82-bf5c-95878bd5e871(命名空间唯一id)
        
      • 每一个微服务之间互相隔离配置,每一个微服务都创建自己的命名空间,只加载自己命名空间下的所有配置
  • (2).配置集: 所有的配置的集合
  • (3).配置集ID: 类似文件名。
    • Data ID: 类似文件名
  • (4).配置分组:
    • 默认所有的配置集都属于: DEFAULT_GROUP;
    • 如: 1111,618,1212
    • 项目中的使用: 每个微服务创建自己的命名空间,使用配置分组区分环境,dev,test,prod

5.同时加载多个配置集:
* (1).微服务任何配置信息,任何配置文件都可以放在配置中心中
* (2).只需要在bootstrap.properties说明加载配置中心中哪些配置文件即可
* (3).@Value,@ConfigurationProperties。。。
* 以前SpringBoot任何方法从配置文件中获取值,都能使用。
* 配置中心有的优先使用配置中心中的

出现错误:

  • 1.IDEA updating indices很慢(2020版本):

    • 在idea没被打开的时候删除缓存,打开C:\Users\xxxx\AppData\Roaming\JetBrains\IntelliJIdea版本号\system
    • 删除里面的caches文件夹 随后重启IDEA
    • 或者去自己修改的路径下删除caches
    • 打开项目执行此操作,下次打开就不会卡在updating indices

2.构建SpringCloud微服务

  • 构建微服务项目时,一定要将SpringBoot的版本和SpringCloud的版本对应起来,否则启动会出现错误。

尚硅谷——谷粒商城项目开发记录——2021.11.20相关推荐

  1. 尚硅谷——谷粒商城项目开发记录——2021.11.19

    尚硅谷--谷粒商城项目开发记录--2021.11.19 出现错误 1.SpringBoot测试类出现Could not autowire. No beans of 'BrandService' typ ...

  2. 尚硅谷——谷粒商城项目开发记录——2021.11.22

    尚硅谷--谷粒商城项目开发记录--2021.11.22 概念: 1.对象优化: 新增的API: ES6 给 Object 拓展了许多新的方法,如: keys(obj): 获取对象的所有 key 形成的 ...

  3. 尚硅谷——谷粒商城项目开发记录——2021.11.21

    尚硅谷--谷粒商城项目开发记录--2021.11.21 概念: 1.var和let的区别: 作用域: var 声明的变量往往会越域 let 声明的变量有严格局部作用域 声明次数: var 可以声明多次 ...

  4. 尚硅谷谷粒商城项目学习笔记-基础-P1项目搭建

    基础-P1项目搭建 0.虚拟机 1.项目架构 1.1Docker 1.1Docker命令 1.3Docker容器文件挂载与端口映射 1.2微服务-注册中心.配置中心.网关 1.3工具配置 1.3.1 ...

  5. 尚硅谷谷粒商城项目P16前端项目renren-fast-vue的bug,耗时三天终于运行起来了

    1.从gitee上克隆项目到本地 命令:git clone [项目地址] 2.以管理员身份运行VSCode,打开renren-fast-vue项目 记住,要以管理员身份运行VSCode,在VSCode ...

  6. M5(项目)-01-尚硅谷谷粒商城项目分布式基础篇开发文档

    M5(项目)-01-尚硅谷谷粒商城项目分布式基础篇开发文档 分布式基础篇 一.环境搭建 各种开发软件的安装 虚拟机: docker,mysql,redis 主机: Maven, idea(后端),Vs ...

  7. 尚硅谷谷粒商城第一天 基础

    尚硅谷谷粒商城 MAC环境搭建 #1. 软件准备 下载.安装Virtual Box https://www.virtualbox.org/wiki/Downloads 下载.安装Vagrant htt ...

  8. 尚硅谷-谷粒商城-电商项目-秒杀系统-笔记

    商城项目简介 项目主要实现了一个模拟电商的分布式秒杀系统,核心模块包括注册登录模块.订单模块.秒杀模块. 框架是spring一套,用到的组件包Nignx服务器,redis,Mysql数据库,rabbi ...

  9. 尚硅谷谷粒商城第十六天 支付、秒杀

    1. 支付 订单搞定之后就是支付了,首先搭建支付工程. 1.1. 搭建环境 pom.xml <?xml version="1.0" encoding="UTF-8& ...

最新文章

  1. Entity Framework 约定
  2. Java反射中method.isBridge() 桥接方法
  3. mysql 自增语句_Mysql 自动增加设定基值的语句 | 很文博客
  4. Vue.js 极简小例: 点击事件
  5. python播放音乐同步歌词_使用Python下载歌词并嵌入歌曲文件中的实现代码
  6. LeetCode-MySQL-174. 第二高的薪水
  7. nginx+tomcat+redis实现session共享
  8. 【礼仪大赛策划方案常识】 什么是正装
  9. Linux kernel tick发起调度软中断函数调用图
  10. 软件测试验收报告知识点
  11. IPv4 + IPv6 = IPv10?是的,IPv10就是IPV4 + IPv6!
  12. 使用云服务器搭建我的世界(Minecraft)服务端
  13. 批量给 Word、PPT 和 PDF 插入封面或新的页面
  14. vs2013配置CUDA .cu文件
  15. vxworks,bootrom启动时由7s减少到1s
  16. 计算机辅助设计对提升产品质量,浅谈CAD技术与计算机辅助设计的应用
  17. NLP:MRC常用数据集
  18. js正则验证身份证号码(最后一位x不区分大小写)
  19. OpenCV基础入门系列基本操作——贰
  20. kibana Discover界面出No results found

热门文章

  1. Lucene基本语法
  2. PHP实现单人多人聊天源码免费分享 | 电脑报修系统
  3. Python课程设计之学生信息管理系统
  4. ChatGLM-6B微调实践与问题汇总(fine-tune+p-tuning+知识遗忘解决尝试)
  5. 实验室有哪些常见的有毒的化学试剂?
  6. linux shutdown 函数,Linux_正确关闭Linux计算机的命令和方法,shutdown -h now 立即关机 shutdown - - phpStudy...
  7. R语言描述性统计函数总结
  8. vs打包错误:要在“系统必备”对话框中启用“从与我的应用程序相同的位置下载系统必备组件”,必须将“Microsoft .NET Framework 4.7.2 (x86 和 x64)”项的文件
  9. python的ppt报告_python可以写PPT吗
  10. JUnit4的一些常用注解