首页 > 其他分享 >谷粒商城学习笔记-2-分布式组件-SpringCloud Alibaba-Nacos注册中心

谷粒商城学习笔记-2-分布式组件-SpringCloud Alibaba-Nacos注册中心

时间:2024-07-08 22:28:43浏览次数:11  
标签:服务 启动 SpringCloud nacos Nacos 注册 Alibaba 客户端

文章目录

一,Nacos简介

1,简介

Nacos是阿里巴巴开源的一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。

Nacos是使用 java 编写,需要依赖 java 环境。

Nacos 文档地址: https://nacos.io/zh-cn/docs/quick-start.html

2,Nacos原理剖析

Nacos是CS架构,有客户端和服务端。

客户端分为服务提供者和服务调用者。

服务提供者将服务的IP和端口注册到Nacos服务器,这个过程称之为服务注册。

服务调用者根据服务名从Nacos服务器获取服务提供者的地址信息,这个过程称之为服务发现。

在这里插入图片描述

以上图为例简要说明Nacos注册中心的原理

  • Nacos服务端就是注册中心
  • 注册1:服务1依赖了Nacos客户端相关的Jar包,启动成功后会将自身IP和端口注册到注册中心
  • 注册2:服务2依赖了Nacos客户端相关的Jar包,启动成功后会将自身IP和端口注册到注册中心
  • 服务2要调用服务1的,首先从注册中心查询到服务1的地址,然后向服务1发起调用请求

二,Nacos服务端安装

1,下载 nacos-server

进入NacosServer下载页面,下载Nacos安装包。

2,解压启动nacos-server

解压后 双击 bin 中的 startup.cmd 文件,nacos-server就启动了。

3,验证

浏览器访问nacos-server界面,地址是http://localhost:8848/nacos/

打开后,需要输入用户名密码,默认的用户名是nacos,密码也是nacos

在这里插入图片描述

上图是Nacos服务端的前端界面,服务列表中会展示所有注册到Nacos的服务。

接下来,我们将之前已经配置好的服务注册到Nacos。

三,服务注册步骤

1,引用Nacas客户端的Jar包

考虑到所有的服务都需要这个Jar包,所以,在common模块的pom文件中声明这个依赖。

在这里插入图片描述

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

2,服务启动类增加注解

在需要注册到Nacos的服务启动类上,增加注解EnableDiscoveryClient。

在这里插入图片描述
这个注解的作用是在服务启动后,将IP和端口注册到Nacos服务器上。

3,配置Nacos服务器地址

因为要把IP和端口注册到Nacos服务器上,所以需要知道Nacos服务器的地址,在配置文件中配置即可。

除此之外,还要配置服务名称,其他服务是根据服务名称在Nacos注册中心查找服务的,服务名会显示在Nacos的服务列表里。

  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848      
  application:
    name: gulimall-coupon

四,验证

启动服务,启动成功后,在nacos注册服务的页面上查看服务列表。

在这里插入图片描述

发现服务列表中已经有刚刚启动的服务的信息,说明服务注册成功。

错误记录

这个过程中的错误记录在另一篇博客中,请参考https://blog.csdn.net/epitomizelu/article/details/140279859

标签:服务,启动,SpringCloud,nacos,Nacos,注册,Alibaba,客户端
From: https://blog.csdn.net/epitomizelu/article/details/140278676

相关文章

  • Maven工程下:alibaba fastjson2的各种序列化:java对象转json对象、json对象转java对象
    pom文件导入fastjson2坐标:<dependency><groupId>com.alibaba.fastjson2</groupId><artifactId>fastjson2</artifactId><version>2.0.51</version></dependency>UserVO对象:@Data@AllArgsConstructor......
  • SpringCloud学习
    认识微服务1.单体架构:将业务的所有功能集中在一个项目中开发,打成一个包部署优点:架构简单部署成本低缺点:耦合度高2.分布式架构:根据业务功能对系统进行拆分,每个业务模块作为独立项目开发,称为一个服务优点:降低服务耦合度有利于服务升级拓展缺点:配置环境增多考虑问题:服务......
  • nacos学习笔记之服务发现中心
    一.什么是服务发现在微服务中,服务的消费方需要调用服务的生产方,这样服务的消费方就需要知道服务的消费方的网络地址(ip+端口号)。二、流程上图中服务实例本身并不记录服务生产方的网络地址,所有服务实例内部都会包含服务发现客户端(例如springcloud中的ribbon)。(1)在每个服务启动......
  • SpringCloud Alibaba Nacos 配置动态更新源码学习总结(二)
    书接上回SpringCloudAlibabaNacos配置动态更新源码学习总结主要看了SpringCloudAlibabNacos的动态配置原理,依赖于部分的springcloud的组件,比如org.springframework.cloud.bootstrap.BootstrapConfiguration,在启动之前进行干预项目启动,那么在之前springboot项目怎么实现的......
  • 解决nacos报错 Caused by: io.grpc.netty.shaded.io.netty.channel.unix.Errors$Nati
    报错信息:org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)atorg.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)atorg......
  • Nacos 2.x 系列【20】集群部署
    文章目录1.前言2.部署服务端2.1准备工作2.2集群节点配置2.3鉴权配置2.4配置数据源2.5配置IP2.6配置端口2.7启动集群3.部署模式3.1直连模式3.2地址服务器模式3.2.1地址服务器3.2.2配置3.3VIP模式(推荐)3.3.1Nginx3.3.1域名1.前言官方文档在实......
  • 面试必会之SpringBoot&SpringCloud
    01-讲一讲SpringBoot自动装配的原理1.在SpringBoot项目的启动引导类上都有一个注解@SpringBootApplication@SpringBootApplication@MapperScan("com.hxx.admin.dao")publicclassAdminApplication{publicstaticvoidmain(String[]args){SpringApplic......
  • SpringCloud-服务网关-Gateway
    1.服务网关在微服务中的应用(1)对外提供服务的难题分析:微服务架构下的应用系统体系很庞大,光是需要独立部署的基础组件就有注册中心、配置中心和服务总线、Turbine异常聚合和监控大盘、调用链追踪器和链路聚合,还有Kaka和MQ之类的中间件,再加上拆分后的零散微服务模块。—个......
  • SpringCloud Alibaba Nacos 配置动态更新源码学习总结
    众所周知,nacos两大核心功能,服务注册发现与动态配置支持服务注册发现的有:Eureka、Consul、Zookeeper、Nacos支持动态配置的有:SpringCloudConfig、Nacos、Apollo、Consul像支持分布式的框架,必须得借用第三方服务,比如定时任务调度xxl-job,分布式事务seata,都分为server端与client......
  • Nacos服务注册、调用、发现(附源码)
    文章目录Nacos悉知Nacos登陆Nacos服务注册与发现1.添加NacosServer依赖2.配置文件application.yml修改3.使用@EnableDiscoveryClient注解:5.验证服务注册是否成功服务调用提供服务消费服务(Feign)测试更多相关内容可查看注:本篇在基于已安装好window版Nacos的......