一、使用步骤(注册中心)

1.启动nocas服务

1)先下载Nacos,解压之后启动。解压之后的目录如下:

2) 注意有的版本默认是集群启动,可以修改启动脚本。如下:

3)也可以使用bin目录下命令行启动:

startup.cmd -m standalone

4)启动的端口号可以在conf目录下的application.properties中修改,默认8848

5)启动成功后如下:

6)访问启动的nacos服务,url:http://localhost:8848/nacos/index.html

用户名和命名初始都是 nacos

启动成功。

7)修改密码可以按照如下步骤:(可跳过)

a.文本编辑器打开nacos目录conf下的nacos-mysql.sql,在最后找到

b.可以修改username,password。为自己的账号密码。但是密码是经过加密的。

INSERT INTO users (username, password, enabled) VALUES ('nacos', '$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', TRUE);

c.数据采用的是BCrypt加密 我们可以找一个网站输入自定义密码 然后加密 把加密后的密码存到数据库中。

1.Bcrypt密码在线生成计算器 Bcrypt密码在线生成计算器 ab126软件园

2.Bcrypt密码生成计算器 - 计算专家

d.修改完保存,重启nacos即可。

2.服务中配置nacos的地址,导入nacos依赖

使用的是application.yml配置文件:

代码如下:

spring:cloud:nacos:server-addr: 127.0.0.1:8848
<!--注册中心 注册发现--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency>

3.给要注册的服务命名

4.运行类上添加服务注册发现注解:@EnableDiscoveryClient

5.运行服务,在浏览器查看nacos

成功。

6.存在的一些bug 异常等处理(配置中心引起的异常)

若服务中引入了nacos的配置中心依赖,则要配置bootstrap.yml或bootstrap.properties文件,

配置nacos的配置中心依赖,和服务的服务名。

因为bootstrap文件是先于其他配置文件加载的,所以引入了nacos配置中心的依赖,则要配置bootstrap文件。

如果要使用nacos配置中心的配置,则要在配置中心中的配置管理新建配置,配置的DataId默认和服务名一致,具体可查看服务启动时的日志信息

在使用配置中的信息时,配合

@value("${ key }")

@RefreshScope  //开启热更新 (nacos中配置刷新)

@RefreshScope 要在使用@value的类的上面使用

注解在类中使用。

   <!--配置中心 配置管理--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId></dependency>

总结

nacos的注册中心的使用。

nacos和eureka的范围不同,Nacos的阈值是针对某个具体Service的,而不是针对所有服务的;但Eureka的自我保护阈值是针对所有服务的。nacos支持CP和AP两种;eureka只支持AP。nacos使用netty,是长连接;eureka是短连接,定时发送。

Nacos与Eureka的保护方式不同

Eureka保护方式:当在短时间内,统计续约失败的比例,如果达到一定阈值,则会触发自我保护的机制,在该机制下,Eureka Server不会剔除任何的微服务,等到正常后,再退出自我保护机制。自我保护开关(eureka.server.enable-self-preservation: false)

Nacos保护方式:当域名健康实例 (Instance) 占总服务实例(Instance) 的比例小于阈值时,无论实例 (Instance) 是否健康,都会将这个实例 (Instance) 返回给客户端。这样做虽然损失了一部分流量,但是保证了集群的剩余健康实例 (Instance) 能正常工作。

扩展:Nacos对比Zookeeper、Eureka之间的区别

java微服务环境配置——注册中心 配置中心Nacos相关推荐

  1. Java微服务(四)【idea配置本地maven】【中文idea版本】(手把手编写,超级详细)

    Java微服务(三)中,我们已经有了本地环境: 1.为了不占用C盘的环境,咱们将[maven]中[conf]下的[settings.xml]文件默认的存储库位置更换一下. [<localRepo ...

  2. 配置多个git账号_docker随手笔记第七节 jenkins通过git部署java微服务插件安装

    docker随手笔记第一节 docker概念及安装 docker随手笔记第二节 docker常用命令解析 docker随手笔记第三节 docker构建java镜像 docker随手笔记第四节 dock ...

  3. 如何优雅的配置 Java 微服务

    本节我们会学到如何以及为什么要实现外部化微服务应用配置. 具体来说,你将学习如何使用 Kubernetes ConfigMaps 和 Secrets 设置环境变量, 然后在 MicroProfile ...

  4. 微服务笔记:第一章_微服务简介|Eureka注册中心|Nacos注册中心|Nacos配置管理|Feign|Gateway服务网关

    微服务笔记:第一章_微服务简介|Eureka注册中心|Nacos注册中心|Nacos配置管理|Feign|Gateway服务网关 1. 微服务简介 1.1 服务架构演变 1.2 SpringCloud ...

  5. Java微服务开发指南-Java环境下的微服务

    本文涉及的内容,能让你学到什么? 本书适用于开发微服务的Java开发人员和架构师.我们在开始介绍微服务架构前,先讲述一些抽象的基本概念.不幸的是,使用新技术并不能神奇地解决分布式系统问题.但是我们通过 ...

  6. Java微服务开发指南 -- Java环境下的微服务

    Java环境下的微服务 本文涉及的内容,能让你学到什么? 本书适用于开发微服务的Java开发人员和架构师.我们在开始介绍微服务架构前,先讲述一些抽象的基本概念.不幸的是,使用新技术并不能神奇地解决分布 ...

  7. Docker——使用docker工具管理软件/组件的运行,镜像、容器、数据卷的基本概念,常用指令,使用docker搭建Java微服务运行环境

    Docker--使用docker工具管理软件/组件的运行,镜像.容器.数据卷的基本概念,常用指令,使用docker搭建Java微服务运行环境 一.docker的安装和卸载 1.卸载 2.安装 3. 导 ...

  8. java微服务开发(基础环境篇)

    java微服务开发(基础环境篇) 我们的目标是~~_浩瀚的宇宙 _~~全栈开发 俗话说的好 _工欲善其事 必先利其器 _对于一个开发者来说 一个好的开发环境可以带来的收益是巨大的 本篇的重点主要是li ...

  9. ASP.NET Core微服务(三)——【跨域配置】

    ASP.NET Core微服务(三)--[跨域配置] 对应练习demo(跨域)下载路径(1积分):[https://download.csdn.net/download/feng8403000/151 ...

最新文章

  1. 002.iSCSI服务端配置
  2. mysql 硬负载_为啥单机MySQL又遭遇瓶颈?MySQL主从复制替你解决单机问题
  3. 二张图白话广告RTA技术
  4. Intel硬件加速 VS CUDA完胜 视频转码感受
  5. 【C语言】第四章 逻辑判断与选择结构 题解
  6. 2008哲思自由软件峰会
  7. Linux Jump Label/static-key机制详解
  8. 固定ip_1分钟学会查看跨境卫士费用和选择固定IP
  9. 二叉树的之字形层序遍历
  10. 模块是python中普通的文件吗_python 包和模块
  11. 【算法导论】第5章,概率分析和随机算法
  12. ftp搜索文件_CrossFTP for Mac(FTP客户端)
  13. windows命令 笔记
  14. Ubuntu系统下载工具的推荐
  15. python实现logistic增长模型拟合2019-nCov确诊人数2月1日更新
  16. feign扫描_Feign基础入门及特性讲解
  17. 苹果中国应用商店改为人民币结算 可网银充值
  18. 解读机器人视觉类别及应用原理
  19. Salesforce(0):使用VsCode使用Aura组件并展示组件扩展
  20. php微信访问,PHP开发之判断微信浏览器访问

热门文章

  1. 火车票能不能选座_在购票窗口买火车票可以选座吗?
  2. python中的get()和item()函数
  3. LED 数码管显示编码
  4. oracle ping 超时_对于tnsping的连接超时的功能补充
  5. Kubernetes从零开始搭建
  6. 宝塔面板Docker部署Bitwarden密码管理器 - 保姆级教程
  7. 专访12306技术负责人朱建生:能否向淘宝取经
  8. Python:饮料换购
  9. 巴尔的摩为何成为了美国研究监控技术的“实验室”
  10. win10重置系统后网速变慢-官方解答详解(WIN10网络问题)