微服务-SpringCloud-ALibaba-Nacos
Nacos
是阿里巴巴推出的 SpringCloud的组件 官网:什么是 Nacos
主要是为了解决微服务的架构中 服务治理的问题服务治理就是进行服务的自动化管理,其核心是服务的注册与发现。
服务注册:服务实例将自身服务信息注册到注册中心。 服务发现:服务实例通过注册中心,获取到注册到其中的服务实例的信息,通过这些信息去请求他们提供服务。 服务剔除:服务注册中心将出问题的服务自动剔除到可用列表之外,使其不会被调用到。
Nacos下载安装
官网下载
去下载https://nacos.io/zh-cn/docs/what-is-nacos.html
我的版本:1.4.1
度娘网盘链接:
提取码:1234
具体的安装文件 怎么安装 如何启动 我的网盘里面有写
下面的步骤默认你已经安装并且启动了nacos
Nacos集成Springboot 以及Springcloud
踩坑:
本人头铁 第一次使用的时候 觉得自己好歹也是java开发者 小小的nacos依赖 只要boot cloud nacos版本都对应上 不就行了 看着官方文档自己操作就ok了 想着自己导入依赖 去Idea里面导入依赖 问题层出不穷 差点干破防了!
我还去尝试了 网上一些博客的教程 可能由于时间太久了 问题多到爆炸 可以说大学生直接泪牛满面!
1.boot版本 cloud版本 与nacos的版本对应不上 好不容易找到了依赖 发现又冲突了 如此反复拉扯后终究还是破防了
2.maven镜像问题 我用的还是老旧的镜像地址 现在阿里云的镜像都已经更新了 找不到依赖
3.服务发现导入失败 版本冲突
解决思路:
在idea新建项目的时候选择 SpringInitializr 既然是阿里巴巴集成的 不如直接用他的官方库
将服务器的地址url改变为https://start.aliyun.com/
然后选择你需要的
这里我们需要的是 springcloud阿里巴巴的nacos 大家可以勾选上 就可以自动创建 避免 发生一些版本冲突等问题
选择自己需要的比如我们这里是简单的注册服务
创建完后项目里面会有很多的示例 没用的 请自行删除 留下启动类
分别配置application.yml 以及SpringbootApplication启动类
package org.example.userserver;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
@EnableDiscoveryClient
//这个注解是开启服务发现注册
@SpringBootApplication
public class UserserverApplication {
public static void main(String[] args) {
SpringApplication.run(UserserverApplication.class, args);
}
}
spring:
application:
#你的服务名 实际上就是你的应用名字
name: userserver
cloud:
nacos:
#配置你的服务地址这里就是你本地的nacos地址
server-addr: localhost:8848
server:
#你的服务端口
port: 8088
配置完毕后启动SpringBoot程序:
踩坑:
由于本人之前学习了大数据之类的东西 电脑上装了虚拟机 网卡冲突 这里启动后报错了 报了个nacos 无法找到主机名的错误 !!!!
说句实话:头都大了
我找了很久这个错误怎么解决 网上也是千奇百怪啊 给出了很多方面 有的直接在yml忽略虚拟机的网卡 我试了一下 不行
我最后用了个很简单的方法 先把虚拟机的网卡禁用了
windos键 +r 打开cmd 输入 control 找到网络和Internet 在网络连接内 禁用虚拟机 需要用的时候打开就行了
注册成功
这里可以看到服务已经注册成功了