1,下载服务
源文件下载地址:https://github.com/alibaba/nacos/releases
我测试时候下载到某云盘地址:链接:https://pan.baidu.com/s/1_I5yX578x1nY4ZZ_u-WU7A 密码:27ue
2,安装
放到Linux服务器上,解压,tar xzvf nacos-server-1.3.1.tar.gz ,or unzip nacos-server-$version.zip 然后 cd nacos/bin 然后运行启动脚本,Linux/Unix/Mac 环境是 sh startup.sh -m standalone ;Windows是 cmd startup.cmd
3,访问nacos服务中心
地址:http://localhost:8848/nacos ,有个登录界面,用户名和密码都是nacos默认值。
4,jar依赖
使用的jar版本
maven的
<!-- https://mvnrepository.com/artifact/com.alibaba.nacos/nacos-client -->
<dependency>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
<version>1.3.1</version>
</dependency>
gradle的
// https://mvnrepository.com/artifact/com.alibaba.nacos/nacos-client
compile group: 'com.alibaba.nacos', name: 'nacos-client', version: '1.3.1'
https://mvnrepository.com/search?q=nacos 远程maven仓库,自己可以找对应的依赖版本jar
5,Java sdk 来使用nacos实现配置的增删改查的例子
import com.alibaba.nacos.api.NacosFactory;
import com.alibaba.nacos.api.config.ConfigService;
import com.alibaba.nacos.api.config.listener.Listener;
import com.alibaba.nacos.api.exception.NacosException;
import org.junit.Test;
import java.util.Properties;
import java.util.concurrent.Executor;
import java.util.concurrent.TimeUnit;
/**
* 测试 nacos 配置中心
*/
public class NacosTest {
@Test
public void test() {
try {
String serverAddr = "192.168.1.191:8848";
String dataId = "dev_demo_001";
String group = "DEFAULT_GROUP";
Properties properties = new Properties();
properties.put("serverAddr", serverAddr);
ConfigService configService = NacosFactory.createConfigService(properties);
//获取配置
String content = configService.getConfig(dataId, group, 5000);
System.out.println(content);
//监听配置变更
configService.addListener(dataId, group, new Listener() {
@Override
public void receiveConfigInfo(String configInfo) {
System.out.println("receive:" + configInfo);
}
@Override
public Executor getExecutor() {
return null;
}
});
// 发布配置
configService.publishConfig("dataId", "group", "content like json yml properties.");
configService.publishConfig("dataId1", "group1", "content like json yml properties....");
content = configService.getConfig("dataId", "group", 5000);
System.out.println(content);
content = configService.getConfig("dataId1", "group1", 5000);
System.out.println(content);
// 删除配置
boolean isRemoveOk = configService.removeConfig("dataId1", "group1");
System.out.println(isRemoveOk);
//让主线程不退出,因为订阅配置是守护线程,主线程退出守护线程就会退出。
TimeUnit.HOURS.sleep(1);
} catch (NacosException | InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
运行效果:
不需要非的引入Spring cloud等组件的,可以直接单独的引入nacos配置中心来管理非Spring项目的配置文件。单独使用这个配置中心的功能。来实现配置的管理。灵活,很灵活。方便,很方便,在页面上看配置和改配置。还能很方便的回退配置。
来源:oschina
链接:https://my.oschina.net/u/4264305/blog/4503634