SpringCloud Alibaba之Nacos
一、运行Nacos
Nacos GitHub开源地址:
https://github.com/alibaba/nacos
Nacos 官方文档:
https://nacos.io/zh-cn/docs/quick-start.html
按照如下命令即可:
//克隆
git clone https://github.com/alibaba/nacos.git //进入对应目录
cd nacos/ //打包
mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U //查看对应目录
ls -al distribution/target/ // 进入打包成功生成的目录结构(我本地nacos是1.3.1,所以对应的$version就是1.3.1)
cd distribution/target/nacos-server-$version/nacos/bin //运行(以我本地windows为例,如果是Linux的话,执行startup.sh脚本即可)
startup.cmd
二、修改配置文件将Nacos的分布式配置存储改为MySQL
进入对应的目录:
cd D:\GitHub-Project\project\nacos\distribution\conf
修改application.properties文件,增加如下内容(对应的sql脚本在同一目录下,名字叫nacos-mysql.sql):
spring.datasource.platform=mysql
db.num=
db.url.=jdbc:mysql://127.0.0.1:3389/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=
三、重新执行运行步骤中的打包操作(一定要打包成功,如果是遇到之前成功,这次失败,可能是配置文件写错的缘故)
mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U
四、运行成功的效果图(默认用户名和密码均为nacos/nacos)

五、Nacos和Eureka对比
1.配置中心对比
- Nacos支持且用起来简单,符合SpringBoot命名风格,支持动态刷新。
- Eureka不支持(需要集成额外的SpringCloud Config组件)
2.注册中心对比
(1)eureka
- 应用内/外:直接集成到应用中,依赖于应用自身完成服务的注册和发现
- ACP原则:遵循AP(可用性+分离容忍)原则,有较强的可用性,服务注册快,但牺牲了一定的一致性
- 版本迭代:目前已经不再进行升级
- 集成支持:只支持SpringCloud集成
- 访问协议:HTTP
- 雪崩保护:支持雪崩保护
- 界面:英文界面,不符合国人习惯
- 上手:容易
(2)nacos
- 应用内/外:属于外部应用,侵入性小
- ACP原则:通知遵循CP原则(一致性+分离容忍)和AP原则(可用性+分离容忍)
- 版本迭代:目前仍然进行版本迭代
- 集成支持:支持Dubbo、SpringCloud、K8S集成
- 访问协议:HTTP/动态DNS/UDP
- 雪崩保护:支持雪崩保护
- 界面:中文界面,符合国人习惯(可根据自己需求,中英文任意切换)
- 上手:极易,中文文档,案例,社区活跃
关于我为什么选择Nacos而不选择Eureka,一方面我们的微服务框架是基于SpringCloud Alibaba的,如果直接切换,整个微服务框架根基都会有很大的动摇;另外一方面,Nacos目前已集成的正是我们所需要的如分布式配置、集群、服务注册和发现等;最后一方面,Nacos目前比Eureka版本迭代确实要活跃的多。
本文参考资料:
Nacos官方文档
nacos简介以及作为注册/配置中心与Eureka、apollo的选型比较
SpringCloud Alibaba之Nacos的更多相关文章
- SpringCloud Alibaba入门之Nacos(SCA)
		SpringCloud Alibaba Spring Cloud Alibaba 致力于提供微服务开发 的一站式解决方案.此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Clo ... 
- SpringCloud Alibaba Nacos 服务注册
		业务服务接入Nacos服务治理中心 启动Nacos访问地址为:http://101.200.201.195:8848/nacos/ 创建bom工程用于管理依赖(下方附加源码地址) 准备工作完成后开始接 ... 
- SpringCloud Alibaba Nacos服务注册与配置管理
		Nacos SpringCloud Alibaba Nacos是一个狗抑郁构建云原生应用的动态服务发现.配置管理和服务管理平台. Nacos:Dynamic Naming and Configurat ... 
- SpringCloud Alibaba实战(7:nacos注册中心管理微服务)
		源码地址:https://gitee.com/fighter3/eshop-project.git 持续更新中-- 在上一节我们已经完成了Nacos Server的本地部署,这一节我们学习如何将Nac ... 
- 【springcloud alibaba】配置中心之nacos
		接着上一篇的[springcloud alibaba]注册中心之nacos,这一篇主要讲nacos的配置中心能力.nacos的集群部署及持久化请看上一篇. ---------------------- ... 
- 【springcloud alibaba】注册中心之nacos
		1.为什么需要注册中心 1.1 没有注册中心会怎么样 1.2 注册中心提供什么功能以及解决什么问题 2.常用的微服务注册中心对比 3.案例项目父工程 4.nacos作为注册中心的使用 4.1 单机版的 ... 
- SpringCloud Alibaba微服务实战 - 基础环境准备
		Springcloud Aibaba现在这么火,我一直想写个基于Springcloud Alibaba一步一步构建微服务架构的系列博客,终于下定决心从今天开始本系列文章的第一篇 - 基础环境准备. 该 ... 
- SpringCloud Alibaba微服务实战一 - 基础环境准备
		Springcloud Aibaba现在这么火,我一直想写个基于Springcloud Alibaba一步一步构建微服务架构的系列博客,终于下定决心从今天开始本系列文章的第一篇 - 基础环境准备. 该 ... 
- SpringCloud Alibaba 简介
		SpringCloud Aliababa简介 SpringCloud Alibaba是阿里巴巴集团开源的一套微服务架构解决方案. 微服务架构是为了更好的分布式系统开发,将一个应用拆分成多个子应用,每一 ... 
随机推荐
- Btree索引和Hash索引
			B-Tree 索引 BTree索引是最常用的mysql数据库索引算法,因为它不仅可以被用在=,>,>=,<,<=和between这些比较操作符上,而且还可以用于like操作符, ... 
- Android性能优化----卡顿优化
			前言 无论是启动,内存,布局等等这些优化,最终的目的就是为了应用不卡顿.应用的体验性好坏,最直观的表现就是应用的流畅程度,用户不知道什么启动优化,内存不足,等等,应用卡顿,那么这个应用就不行,被卸载的 ... 
- 让你的GitHub下载飞速提升到2M/s以上
			2020年7月27日整理发布多种GitHub加速方式! 转载自:https://code.pingbook.top/blog/2020/How-To-Speed-Github.html 1. GitH ... 
- Redis服务之常用配置(二)
			上一篇博客我们聊了下redis的INCLUDE.NETWORK.GENERAL配置段相关配置和说明,回顾请参考:https://www.cnblogs.com/qiuhom-1874/p/133831 ... 
- Day03_破解Windows7系统密码&用户与组管理&服务器远程管理
			破解Windows系统密码 一.利用5次shift漏洞破解win7密码 1.1 漏洞 1.在未登录系统时,连续按5次shift键,弹出程序c:\windows\system32\sethc.exe 2 ... 
- Day02_SpringCloud
			学于黑马和传智播客联合做的教学项目 感谢 黑马官网 传智播客官网 微信搜索"艺术行者",关注并回复关键词"乐优商城"获取视频和教程资料! b站在线视频 0.学习 ... 
- 使用MacOS自带的SVN客户端
			原文链接:https://jingyan.baidu.com/article/5552ef479c1554518ffbc92f.html 摘要:mac环境下有自带的SVN服务端和客户端,SVN是许多公 ... 
- Vue数据产生变化需要页面渲染完之后执行某操作
			1.数据产生变化或者页面需要vue数据渲染完之后加载的东西 Vue.nextTick(function () { alert(123); }); 2 调用vue方法 --------------Vue ... 
- functools函数中的partial函数及wraps函数
			''' partial引用函数,并增加形参 ''' import functools def show_arg(*args,**kwargs): print("args",args ... 
- PHP constant() 函数
			实例 返回一个常量的值: <?php//define a constantdefine("GREETING","Hello you! How are you tod ... 
