Nacos的简单使用

搭建项目过程中遇到的问题:
1、bootstrap.yml配置文件不生效
解决方案为步骤6
2、UnknownHostException: xxx @LoadBalanced注解失效 Nacos中无法通过服务名调用
解决方案为步骤2
说明:启动nacos后创建两个springboot项目,一个goods项目一个order项目
下面以order项目为例贴出关键代码及依赖
1、springboot版本

	<parent>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-parent</artifactId>
			<!-- 注意版本号 -->
			<version>2.4.0</version>
			<relativePath/> <!-- lookup parent from repository -->
	</parent>

2、spring-cloud-starter-loadbalancer版本

		<dependency>
		    <groupId>org.springframework.cloud</groupId>
		    <artifactId>spring-cloud-starter-loadbalancer</artifactId>
		    <version>3.0.3</version>
		</dependency>

3、引入的discovery

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

4、alibaba-dependencies依赖管理

	<dependencyManagement>
		<dependencies>
			<dependency>
				<!-- https://mvnrepository.com/artifact/com.alibaba.cloud/spring-cloud-alibaba-dependencies -->
			    <groupId>com.alibaba.cloud</groupId>
			    <artifactId>spring-cloud-alibaba-dependencies</artifactId>
			    <version>2021.1</version>
			    <type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

5、客户端springboot类代码

@SpringBootApplication
@EnableDiscoveryClient
public class NacosOrderApplication {

	@Bean
	@LoadBalanced
	public RestTemplate restTemplate() {
		return new RestTemplate();
	}
	
	public static void main(String[] args) {
		SpringApplication.run(NacosOrderApplication.class, args);
	}

}

6、yaml配置,注意:此处使用bootstrap.yml而不是application.yml,所以需要在pom文件中添加依赖

		<dependency>
		    <groupId>org.springframework.cloud</groupId>
		    <artifactId>spring-cloud-starter-bootstrap</artifactId>
		    <version>3.0.1</version>
		</dependency>
server:
  # goods项目使用6011
  port: 6010
spring:
  application:
    # goods项目使用goods
    name: order
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848
        register-enabled: true

7、写一个controller

@RestController
public class OrderController {
	
	@Autowired
	public RestTemplate restTemplate;
	
	@GetMapping("getOrder")
	public String getOrder() {
		// goods中的controller这里不在详述spring.application.name设置为goods即可Nacos会做代理
		return "订单中有商品:"+ restTemplate.getForObject("http://goods/getGoods", String.class);
	}
	
}

goods项目采用一样的配置即可
暂时写到这里,后面补充

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据引用\[1\]和引用\[2\]的内容,你在使用Nacos作为配置中心时遇到了找不到配置的问题。可能的原因是你的配置文件命名方式不正确。正确的命名方式应该是`${spring.application.name}-${spring.profile.active}.${spring.cloud.nacos.config.file-extension}`,所以你需要将`nacos-config-client.dev.yaml`改为`nacos-config-client-dev.yaml`。 根据引用\[3\]的内容,你还提到了在学习谷粒商城项目搭建Nacos配置中心时遇到了无法动态刷新的问题。为了解决这个问题,你可以按照以下步骤进行操作: 1. 在Windows下安装和启动Nacos。 2. 学习如何简单使用Nacos的配置中心。 3. 检查你自己遇到的问题,并寻找相应的解决方案。 关于你提到的"Nacos 2.20 使用配置报错"的问题,由于你没有提供具体的错误信息,我无法给出具体的解决方案。但是你可以尝试检查你的配置文件是否正确,并确保Nacos的版本与你使用的配置兼容。 希望以上信息对你有帮助。如果你还有其他问题,请随时提问。 #### 引用[.reference_title] - *1* *2* [NACOS 配置中心 无法获取配置 总是报错,可能原因如下:](https://blog.csdn.net/m0_57802508/article/details/125378118)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [nacos配置中心简单使用,以及自己遇到的配置文件无法生效的问题](https://blog.csdn.net/LoveStady/article/details/126160055)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值