Spring Cloud 微服务分布式架构 Nacos 作为注册中心实现服务的注册及发现
文章目录
前言
提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
提示:以下是本篇文章正文内容,下面案例可供参考
一、什么是Nacos?
欢迎来到 Nacos 的世界!
1、Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
2、Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
3、如 Nacos 全景图所示,Nacos 无缝支持一些主流的开源生态,例如
3.1、Spring Cloud
3.2、Apache Dubbo and Dubbo Mesh
3.3、Kubernetes and CNCF。
nacos-provide:服务提供者
nacos-consumer:服务消费者
二、 Nacos架构部分会详细介绍。
Nacos官方网站 : https://nacos.io/zh-cn/docs/what-is-nacos.html
1.架构图
特性大图:要从功能特性,非功能特性,全面介绍我们要解的问题域的特性诉求
架构大图:通过清晰架构,让您快速进入 Nacos 世界
业务大图:利用当前特性可以支持的业务场景,及其最佳实践
生态大图:系统梳理 Nacos 和主流技术生态的关系
优势大图:展示 Nacos 核心竞争力
战略大图:要从战略到战术层面讲 Nacos 的宏观优势
2.Nacos 生态图
如 Nacos 全景图所示,Nacos 无缝支持一些主流的开源生态,例如
Spring Cloud
Apache Dubbo and Dubbo Mesh
Kubernetes and CNCF。
使用 Nacos 简化服务发现、配置管理、服务治理及管理的解决方案,让微服务的发现、管理、共享、组合更加容易。
关于如何在这些生态中使用 Nacos,请参考以下文档:(重点哦,拿小本本记住)
Nacos与Spring Cloud一起使用
Nacos与Kubernetes一起使用
Nacos与Dubbo一起使用
Nacos与gRPC一起使用
Nacos与Istio一起使用
(以上信息均来自官网文档)
下载地址: https://github.com/alibaba/nacos/releases
下载解压后进入bin文件夹(目录:nacos\bin),直接双击执行startup.cmd文件,启动成功如下图:
二、SpringCloud 整合 Nacos架构实现服务注册
1.创建Nacos配置服务
IDEA中创建聚合工程Nacos作为父工程,其pom.xml如下(重点关注dependencyManagement配置):
2.创建provide:服务提供者
1、创建启动类ProvideController,服务的请求入口 ,并添加注解@EnableDiscoveryClient 开启服务注册发现功能:
@RestController
@EnableDiscoveryClient
@SpringBootApplication
public class ProvideController {
public static void main(String[] args) {
SpringApplication.run(NProvideController .class, args);
}
@GetMapping("/helloNacos")
public String helloNacos(){
return "这是服务提供方,nacos!,小新新最帅";
}
}
2、资源文件信息Resource中application.yml文件配置
server:
port: 9527
spring:
application:
name: provide
cloud:
nacos:
discovery:
server-addr: 10.16.10.166
3、pom.xml配置文件信息
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns=