基于naocs做注册中心和配置中心实践

1.安装启动nacos-server

nacos是作为一个单独的服务提供给其它服务作为配置中心和注册中心使用,需要下载启动nacos-server
最新稳定版本 下载地址:https://github.com/alibaba/nacos/releases
我下载的是nacos1.01
下载后解压,进入bin目录
1.1 Linux/Unix/Mac
启动命令(standalone代表着单机模式运行,非集群模式):
sh startup.sh standalone

1.2 Windows
启动命令:
cmd startup.cmd【双击启动】
或者双击startup.cmd运行文件。

1.3 打开控制台
http://localhost:8848/nacos/
登录名:nacos 密码:nacos
在这里插入图片描述
注意:spring cloud版本和spring boot版本是有对应关系的,不引入对应版本不能正常使用
版本对应关系如下:
在这里插入图片描述
详细的版本管理信息可参考:
https://github.com/alibaba/spring-cloud-alibaba/wiki/版本说明
2.创建spring cloud项目
2.1引入依赖

<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-dependencies</artifactId>
				<version>2.0.4.RELEASE</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dependencies</artifactId>
				<version>Finchley.RELEASE</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
			<exclusions>
				<exclusion>
					<groupId>com.alibaba.nacos</groupId>
					<artifactId>nacos-client</artifactId>
				</exclusion>
			</exclusions>
			<version>0.2.2.RELEASE</version>
		</dependency>

		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
			<version>0.2.2.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>com.alibaba.nacos</groupId>
			<artifactId>nacos-client</artifactId>
			<version>1.0.0</version>
		</dependency>
	</dependencies>

2.2.启动类如下:

@SpringBootApplication
@EnableDiscoveryClient
@RestController
@RefreshScope
public class ServiceAApplication {

	public static void main(String[] args) {
		SpringApplication.run(ServiceAApplication.class, args);
	}

	@RestController
	class TestController {
		@Value("${useLocalCache:false}")
		private boolean useLocalCache;

		public void setUseLocalCache(boolean useLocalCache) {
			this.useLocalCache = useLocalCache;
		}

		@RequestMapping(value = "/get")
		@ResponseBody
		public boolean get() {
			return useLocalCache;
		}
	}
}

2.3在项目生成resources目录下创建bootstrap.yml

spring:
  application:
    name: serviceA
  cloud:
    nacos:
      config:
        file-extension: yml
        server-addr: 127.0.0.1:8848
      discovery:
        file-extension: yml
        server-addr: 127.0.0.1:8848
   

2.4.nacos控制台创建配置文件serviceA.yml
在这里插入图片描述
这里我只配置了服务启动的端口为8090,不配置默认服务会以8080端口启动,如果最终serciceA服务最终以8090启动说明我们在nacos创建的配置生效
2.5启动serciceA服务
如下图,启动serciceA服务发现运行在8090,且在nacos服务列表页可以看到服务注册上去了
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值