nacos 作为注册中心

准备nacos的运行环境:

一、通过windows的方式

1.下载最新版的安装包:  nacos下载地址  

下载完成后出现该类型的安装包

2.解压压缩包 

3. 启动nacos

进入压缩包中文件夹 进入bin目录下 ,打开控制台 输入启动命令

注意: 由于nacos默认是以集群模式启动的,这里演示的是 单机模式 所以就需要加参数

-m standalone 表示的是 以单机模式启动 nacos

启动 nacos :     startup.cmd -m standalone

4.访问 nacos

在浏览器页面输入  localhost:8848/nacos  即可进入 nacos  因为 nacos的 默认端口是 "8848"

二、通过docker的方式(推荐)

1. 通过nacos来拉取镜像

# 拉取镜像
docker pull nacos/nacos-server:v2.2.2

2.运行nacos的镜像 

# 创建容器 nacos2.x的版本新增了一个客户端与服务端的gRpc的通讯端口号9848
docker run -id --name nacos -e MODE=standalone --restart=always -p 8848:8848 -p 9848:9848  nacos/nacos-server:v2.2.2

小插曲:  简单的介绍了一下 docker启动镜像时的各个参数。

docker run  docker的启动命令

  -id  后台启动

--name  nacos  给容器起名字

-e MODE=standalone    -e 添加环境变量  作用就是 在nacos启动时 需要以单机模式启动

--restart=always   设置开机自启

-p 8848:8848  进行端口的映射 由于 宿主机(linux)和容器(docker容器) 默认是隔离的,所以如果要访问容器内部的端口则需要进行端口的映射  

第一个 8848  宿主机的端口  可以随便写   

第二个 8848  容器中的端口 固定的 不可以随便写的。  8848 是 nacos运行时所需要占用的端口

-p 9848:9848   9848  Nacos中的GRPC SDK Server端的端口,用于客户端GRPC连接,默认为主端口偏移+1000

nacos/nacosserver:v2.2.2  前面的nacos 表示的是 自定义容器名称  nacosserver:v2.2.2 表示的是镜像的版本。 

3. 访问 nacos服务。

三、 将微服务注册到nacos中去。

一、创建微服务工程

二、 往maven中添加依赖

<dependencies>   

    <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

</dependencies>

三、编写yml的配置文件
#设置服务端口号
server:
  port: 8080  # 微服务的启动端口号
spring:
  cloud:
    nacos:
      discovery:
        server-addr: 192.168.126.128:8848   # nacos的服务器 地址
  application:
    name: spzx-cloud-nacos-test  # 微服务应用的名称
四、运行微服务
五、进入nacos查看是否服务被注册  在这里可以看到我的服务已经被注册进入 nacos中去了

nacos(注册中心)的作用

传统模式进行微服务之间的访问,需要通过http协议发送请求,然后获取响应结果

而nacos可以作为注册中心帮助我们去维护 各个微服务的地址,然后我们通过 springcloud的另一个组件 LoadBalanced  来从 nacos中获取 各个微服务的地址从而动态的发送请求。

相关推荐

  1. 2、学习 Nacos 注册中心

    2024-03-11 13:40:06       42 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-11 13:40:06       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-11 13:40:06       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-11 13:40:06       82 阅读
  4. Python语言-面向对象

    2024-03-11 13:40:06       91 阅读

热门阅读

  1. MySQL之主从同步(openEuler版)

    2024-03-11 13:40:06       43 阅读
  2. 【SQL - 软件 - MySQL】随笔 - 查看已有数据库

    2024-03-11 13:40:06       46 阅读
  3. linux系统 QT 处理键盘Ctrl+C信号

    2024-03-11 13:40:06       36 阅读
  4. 举例说明计算机视觉(CV)技术的优势和挑战。

    2024-03-11 13:40:06       50 阅读
  5. Ubuntu系统开发环境搭建和常用软件

    2024-03-11 13:40:06       42 阅读
  6. Unity3D 基于AStar地图的摇杆控制角色详解

    2024-03-11 13:40:06       45 阅读
  7. Debian系APT源通用镜像加速配置

    2024-03-11 13:40:06       45 阅读
  8. NLP技术

    2024-03-11 13:40:06       45 阅读
  9. Go语言聊天室demo

    2024-03-11 13:40:06       45 阅读
  10. 【golang】二叉树的遍历

    2024-03-11 13:40:06       41 阅读
  11. Go语法之函数 defer使用

    2024-03-11 13:40:06       43 阅读