长沙 网站设计 公司,网页制作与网站建设的发展趋势设想,深圳手机端网站建设设计公司,网页设计企业宣传网站一、基于SpringCloud Alibaba的微服务电商解决方案 1.1、什么是SpringCloud Alibaba? 一系列框架的有序的集合 1.2、电商项目的三高 高并发、高新能、高可用 1.3、SpringCloud Alibaba电商微服务 架构 image.png AKF扩展拆分 image.png y轴 image.png x轴 image.png z轴 image… 一、基于SpringCloud Alibaba的微服务电商解决方案 1.1、什么是SpringCloud Alibaba? 一系列框架的有序的集合 1.2、电商项目的三高 高并发、高新能、高可用 1.3、SpringCloud Alibaba电商微服务 架构 image.png AKF扩展拆分 image.png y轴 image.png x轴 image.png z轴 image.png 1.4 微服务工程搭建 image.png 搭建结构 版本选择 版本匹配 1.5 Nacos极简入门 1.5.1 介绍 帮助我们发现、配置、管理微服务alibaba实现的服务注册中心 服务发现和健康检测动态配置服务动态DNS服务服务及其元数据管理 【https://nacos.io/zh-cn/docs/what-is-nacos.html#:~:text%E5%BC%80%E5%8F%91%E5%9B%A2%E9%98%9F-,%E4%BB%80%E4%B9%88%E6%98%AF%20Nacos,-%E6%A6%82%E8%A7%88】 1.5.2 使用场景 老项目使用 最新用法 1.5.3 使用 下载地址https://github.com/alibaba/nacos/releases 启动 访问 1.5.4 Nacos与项目整合 启动类上加EnableDiscoveryClient服务发现注解在RestTemplate上加LoadBalanced注解实现动态路由功能最后在yml文件中配置nacos地址 pom.xml dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-discovery/artifactId/dependencyString productName restTemplate.getForObject(http://product-server/product/createProduct/ productId, String.class);二、Nacos Config配置中心 2.1 常见的配置中心 ApplloDisconfSpringCloud ConfigNacos 2.2 为什么使用配置中心 配置文件分散在各个项目里不方便维护配置内容安全与权限更新配置后项目需要重启 2.3 配置中心得作用 系统配置的集中管理编辑、存储、分发、动态更新配置不重启、回滚配置变更管理、历史版本管理、变更审计等所有与配置相关的活动 2.4 不同环境的配置与使用 dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-config/artifactId/dependencyspring:application:name: configcentercloud:nacos:config:server-addr: ***********:8848file-extension: yamlprofiles:active: dev
server:port: 7000配置中心地址http://47.93.249.168:8848/nacos nacos配置中心 配置中心详细配置 RestController
RefreshScope //动态刷新nacos配置
RequestMapping(/config)
public class ConfigController {Value(${testStr})private String testStr;Value(${testCommon})private String testCommon;GetMapping(/test)public String hello() {return testStr , testCommon;}
}思考在nacos中配置了四个文件configcenter-test.yaml,configcenter-dev.yaml,configcenter-prod.yaml,configcenter.yaml 如果同一个配置在四个文件中都存在且值不同最终项目读取的是那个 最后会读取configcenter.yaml 结论如果配置了spring.profile.active则优先获取configcenter-${spring.profile.active}.yaml中的值 总结 在bootstrap.yaml文件中如果配置了spring.profile.active在nacos多个配置中不重合的值都会读取重合的以active为主。没配置就以configcenter.yaml为主nacos中Data IDconfigcenter-dev)的取值要与bootstrap.yaml中 spring.application.name(configcenter)和spring.profiles.active(dev)的值一致 2.5 不同微服务的配置和使用 1、shard-configs spring:application:name: configcentercloud:nacos:config:server-addr: **********:8848file-extension: yamlshared-configs[0]:dataId: mq.yaml # 对应的nacos的Data Idrefresh: true # 是否刷新shared-configs[1]:dataId: redis.yamlrefresh: true/*** 不同微服务的nacos配置*/Value(${redisStr})private String redisStr;Value(${mqStr})private String mqStr;Value(${test})private String test;GetMapping(/test)public String hello() {return testStr , testCommon;}GetMapping(/test2)public String hello2() {return redisStr , mqStr;}GetMapping(/test3)public String hello3() {return test;}nacos配置中心 思考如果shard-configs的文件存在相同的配置最终会以哪个配置文件中的值为主 会以后配置的配置文件中的值为主 2、extension-configs extension-configs读取顺序和shard-config配置和读取顺序一样后配置的为主 spring:application:name: configcentercloud:nacos:config:server-addr: **********:8848file-extension: yamlextension-configs[0]:dataId: redis.yaml # 对应的nacos的Data Idrefresh: true # 是否刷新extension-configs[1]:dataId: mq.yamlrefresh: true总结 当shared-configs和extension-configs存在相同的配置则以extension-config中的配置为主 三、Nacos Config动态刷新机制 3.1 原理 image.png 最后编辑于2025-06-05 21:07:25 © 著作权归作者所有,转载或内容合作请联系作者 平台声明文章内容如有图片或视频亦包括在内由作者上传并发布文章内容仅代表作者本人观点简书系信息发布平台仅提供信息存储服务 喜欢的朋友记得点赞、收藏、关注哦