尚硅谷——谷粒商城项目开发记录——2021.11.20
尚硅谷——谷粒商城项目开发记录——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,即分布式事务解决方案
- SpringCloud Alibaba - Nacos:
- 依赖(注意版本):
- 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)
- 每一个微服务之间互相隔离配置,每一个微服务都创建自己的命名空间,只加载自己命名空间下的所有配置
- 在bootstrap.properties;配置上,需要使用哪个命名空间下的配置
- (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相关推荐
- 尚硅谷——谷粒商城项目开发记录——2021.11.19
尚硅谷--谷粒商城项目开发记录--2021.11.19 出现错误 1.SpringBoot测试类出现Could not autowire. No beans of 'BrandService' typ ...
- 尚硅谷——谷粒商城项目开发记录——2021.11.22
尚硅谷--谷粒商城项目开发记录--2021.11.22 概念: 1.对象优化: 新增的API: ES6 给 Object 拓展了许多新的方法,如: keys(obj): 获取对象的所有 key 形成的 ...
- 尚硅谷——谷粒商城项目开发记录——2021.11.21
尚硅谷--谷粒商城项目开发记录--2021.11.21 概念: 1.var和let的区别: 作用域: var 声明的变量往往会越域 let 声明的变量有严格局部作用域 声明次数: var 可以声明多次 ...
- 尚硅谷谷粒商城项目学习笔记-基础-P1项目搭建
基础-P1项目搭建 0.虚拟机 1.项目架构 1.1Docker 1.1Docker命令 1.3Docker容器文件挂载与端口映射 1.2微服务-注册中心.配置中心.网关 1.3工具配置 1.3.1 ...
- 尚硅谷谷粒商城项目P16前端项目renren-fast-vue的bug,耗时三天终于运行起来了
1.从gitee上克隆项目到本地 命令:git clone [项目地址] 2.以管理员身份运行VSCode,打开renren-fast-vue项目 记住,要以管理员身份运行VSCode,在VSCode ...
- M5(项目)-01-尚硅谷谷粒商城项目分布式基础篇开发文档
M5(项目)-01-尚硅谷谷粒商城项目分布式基础篇开发文档 分布式基础篇 一.环境搭建 各种开发软件的安装 虚拟机: docker,mysql,redis 主机: Maven, idea(后端),Vs ...
- 尚硅谷谷粒商城第一天 基础
尚硅谷谷粒商城 MAC环境搭建 #1. 软件准备 下载.安装Virtual Box https://www.virtualbox.org/wiki/Downloads 下载.安装Vagrant htt ...
- 尚硅谷-谷粒商城-电商项目-秒杀系统-笔记
商城项目简介 项目主要实现了一个模拟电商的分布式秒杀系统,核心模块包括注册登录模块.订单模块.秒杀模块. 框架是spring一套,用到的组件包Nignx服务器,redis,Mysql数据库,rabbi ...
- 尚硅谷谷粒商城第十六天 支付、秒杀
1. 支付 订单搞定之后就是支付了,首先搭建支付工程. 1.1. 搭建环境 pom.xml <?xml version="1.0" encoding="UTF-8& ...
最新文章
- Entity Framework 约定
- Java反射中method.isBridge() 桥接方法
- mysql 自增语句_Mysql 自动增加设定基值的语句 | 很文博客
- Vue.js 极简小例: 点击事件
- python播放音乐同步歌词_使用Python下载歌词并嵌入歌曲文件中的实现代码
- LeetCode-MySQL-174. 第二高的薪水
- nginx+tomcat+redis实现session共享
- 【礼仪大赛策划方案常识】 什么是正装
- Linux kernel tick发起调度软中断函数调用图
- 软件测试验收报告知识点
- IPv4 + IPv6 = IPv10?是的,IPv10就是IPV4 + IPv6!
- 使用云服务器搭建我的世界(Minecraft)服务端
- 批量给 Word、PPT 和 PDF 插入封面或新的页面
- vs2013配置CUDA .cu文件
- vxworks,bootrom启动时由7s减少到1s
- 计算机辅助设计对提升产品质量,浅谈CAD技术与计算机辅助设计的应用
- NLP:MRC常用数据集
- js正则验证身份证号码(最后一位x不区分大小写)
- OpenCV基础入门系列基本操作——贰
- kibana Discover界面出No results found
热门文章
- Lucene基本语法
- PHP实现单人多人聊天源码免费分享 | 电脑报修系统
- Python课程设计之学生信息管理系统
- ChatGLM-6B微调实践与问题汇总(fine-tune+p-tuning+知识遗忘解决尝试)
- 实验室有哪些常见的有毒的化学试剂?
- linux shutdown 函数,Linux_正确关闭Linux计算机的命令和方法,shutdown -h now 立即关机
shutdown - - phpStudy...
- R语言描述性统计函数总结
- vs打包错误:要在“系统必备”对话框中启用“从与我的应用程序相同的位置下载系统必备组件”,必须将“Microsoft .NET Framework 4.7.2 (x86 和 x64)”项的文件
- python的ppt报告_python可以写PPT吗
- JUnit4的一些常用注解