之六 2流高手速成记:从SpringBoot到SpringCloudAlibaba( 二 )


之六 2流高手速成记:从SpringBoot到SpringCloudAlibaba

文章插图
我们看到工程的resources目录下额外多出了一个bootstrap.properties文件,两个Nacos相关的Configuration配置文件暂时用不到
pom.xml中也多出了相应的版本声明及依赖项:
<properties>......<spring-cloud-alibaba.version>2.2.2.RELEASE</spring-cloud-alibaba.version><spring-cloud.version>Hoxton.SR9</spring-cloud.version></properties>......<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId></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-dubbo</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter</artifactId></dependency>我们先修改下bootstrap.properties和application.properties中指向的nacos服务地址:(注意:两个配置文件下的配置都要修改)
# 设置配置中心服务端地址spring.cloud.nacos.config.server-addr=127.0.0.1:8848而后直接启动工程,待工程启动完毕后,刷新nacos主界面
之六 2流高手速成记:从SpringBoot到SpringCloudAlibaba

文章插图
我们将看到我们的应用已经成功【注册】到Nacos服务中心
到这里你是否有种恍然大悟的感觉?这就是Nacos所担当的“注册中心”的角色!
那么我们将应用作为一个服务注册到Nacos又有什么作用呢?答案你或许已经猜到了——供其他应用调用!
这其中的机制我们留个悬念,下一节再讲
3. Nacos作为配置中心那么nacos又是如何充当配置中心的作用?
还记得刚才多出来的那个bootstrap.properties吗?现在我们可以来聊聊它的作用了
bootstrap.properties的加载时机要优先于application.properties , 一般用于指定系统级的相关配置,其配置内容一般固定不变
借助于bootstrap.properties,我们可以实现application.properties配置内容的“云端化”
我们先来看bootstrap.properties的内容:
# Nacos认证信息spring.cloud.nacos.config.username=nacosspring.cloud.nacos.config.password=nacosspring.cloud.nacos.config.contextPath=/nacos# 设置配置中心服务端地址spring.cloud.nacos.config.server-addr=127.0.0.1:8848spring.cloud.nacos.config.namespace=# 应用名称spring.application.name=hellospringcloudalibaba可以看到它主要包含了Nacos相关的配置信息
最后应用名称这部分是我后续补充的
之后我们便可以移除本地的application.properties,并将其内容迁移至Nacos
打开Nacos配置管理页面,新增配置
之六 2流高手速成记:从SpringBoot到SpringCloudAlibaba

文章插图

之六 2流高手速成记:从SpringBoot到SpringCloudAlibaba

文章插图
我们重新启动工程,发现在本地不存在application.properties配置的情况下,工程依然可以重新启动,并正确加载迁移到Nacos的工程配置
这就是Nacos作为“配置中心”的作用!而这种云端化配置的方式显然要比application.properties本土化配置的方式更加灵活便捷
这就是Nacos在SpringCloudAlibaba体系之下所起到的核心作用,这里其实也仅是点到为止,但相信你已经对这些概念有了一个大概的了解
以上
本节先是引出了微服务的概念,继而阐述了SpringCloud以及SpringCloudAlibaba的区别,最后具体讲解了Nacos作为SpringCloudAlibaba体系的核心组件所起到的作用
微服务领域的学问博大精深,本节仅是引出了概念而并未做深入讨论;下一节我们将继续挖掘SpringCloudAlibaba微服务更多的机制和用法
Dubbo框架将走进我们的视野!敬请期待~
【之六 2流高手速成记:从SpringBoot到SpringCloudAlibaba】

推荐阅读