spring-cloud-alibaba入门学习(二)——nacos消费端注册进nacos并访问

如何使用公网地址远程访问内网Nacos UI界面查看注册服务 上面在本地Docker中成功部署了Nacos服务,并局域网访问成功,下面我们在Linux安装Cpolar内网穿透工具,通过cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器.下面是安装cpolar步骤。这种随机地址的优势在于建立速度快,可以立即使用。资源路径,在任意设备的浏览器进行访问,即可成功看到我们Nacos UI界面,这样一个公网地址且可以远程访问就创建好了,使用了Cpolar的公网域名,无需自己购买云服务器,即可发布到公网进行远程访问! 阅读详情

在上一篇中我们将客户端服务注册进了nacos,现在我们将消费端注册进nacos,同时让消费端能够成功访问。

  1. 在上一篇的父级项目中创建一个module。
    其pom文件为:
    <dependencies>
            <!--SpringCloud ailibaba nacos -->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            </dependency>
            <!-- 引入自己定义的api通用包,可以使用Payment支付Entity -->
            <dependency>
                <groupId>org.example</groupId>
                <artifactId>cloud-api-commons</artifactId>
                <version>${project.version}</version>
            </dependency>
            <!-- SpringBoot整合Web组件 -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-actuator</artifactId>
            </dependency>
            <!--日常通用jar包配置-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-devtools</artifactId>
                <scope>runtime</scope>
                <optional>true</optional>
            </dependency>
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <optional>true</optional>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
        </dependencies>

    配置文件为:
     

    server:
      port: 83
    
    
    spring:
      application:
        name: nacos-order-consumer
      cloud:
        nacos:
          discovery:
            server-addr: localhost:8848
    
    
    #消费者将要去访问的微服务名称(注册成功进nacos的微服务提供者)
    service-url:
      nacos-user-service: http://nacos-payment-provider

    主启动类:
     

    @EnableDiscoveryClient
    @SpringBootApplication
    public class OrderNacosMain83 {
        public static void main(String[] args) {
            SpringApplication.run(OrderNacosMain83.class,args);
        }
    }

    创建一个测试类:
     

    @RestController
    @Slf4j
    public class OrderNacosController {
    
        @Resource
        private RestTemplate restTemplate;
    
        //也可以将这个地址写在类中
        @Value("${service-url.nacos-user-service}")
        private String serverURL;
    
        @GetMapping(value = "/consumer/payment/nacos/{id}")
        public String paymentInfo(@PathVariable("id") Long id) {
    
            return restTemplate.getForObject(serverURL+"/payment/nacos/"+id,String.class);
        }
    
    }

    启动此项目,如果在nacos中能够查看到说明注册成功。

  2. 访问客户端
    在浏览器输入http://localhost:83//consumer/payment/nacos/1,如果出现如下信息说明访问客户端的代码成功。

  3. 实现负载均衡
    按照上一篇的代码重新复制一份,然后将端口改成9002并启动,此时查看我们的nacos会发现客户端有两个实例


    在消费端也就是新建一个ApplicationContextConfig,@LoadBalanced注解会让restTemplate调用接口时走负载均衡。

    @Configuration
    public class ApplicationContextConfig {
    
        @Bean
        @LoadBalanced
        public RestTemplate getRestTemplate() {
            return new RestTemplate();
        }
    }

    重新启动项目并访问接口会发现打印出来的端口分别为9001和9002,说明负载均衡生效。
     

nacos简单使用 微服务可以在多个地域部署,来提高容灾能力,同时,为了提高访问速度,可以设置尽可能同地域之间的微服务调用来提高服务访问速度,前提是设置负载均衡规则为NacosRule,否则默认的仍然是轮询规则。来发送http请求,这里一定要加上@LoadBalanced,它会自动根据服务名称向nacos索取服务实例的ip地址及其他信息,并根据yml文件中设置的负载均衡规则进行服务实例选择。可根据服务名称来配置对应的负载均衡规则,默认的是轮询,这里配置的是nacos的NacosRule。打开nginx配置文件,修改如下代码。. 阅读详情

相关推荐

Spring Cloud Alibaba Nacos注册中心入门

Spring Cloud Nacos注册中心入门和多环境配置

鱼丝泽的博客 2032

Nacos

Spring Cloud 之 Nacos 服务注册中心和配置中心

weixin_46061449的博客 1万+

Alibaba Spring Cloud 十二 Nacos 灰度发布

在微服务架构中,灰度发布(也称“金丝雀发布”或“蓝绿发布”)可以帮助我们在上线新功能时,将流量逐步引入到新版本,从而减少大规模变更带来的风险。Nacos 本身提供了服务注册和配置管理的能力,但并不直接内置“灰度发布”一键功能。通常,我们需要借助 Nacos 的标签 / 分组 / 元数据 与 Spring Cloud 生态(如 Gateway、LoadBalancer 等) 共同实现灰度的效果。

空 1531

Nacos成功启动但是无法访问 (Connection refused)

启动Nacos时遇到连接失败如何排查原因并解决

weixin_44712778的博客 1万+

Spring Cloud Alibaba 使用nacos 注册中心

背景 上一文我们讲到了如何去搭建注册中心,这一次我们讲述如何使用nacos作为注册中心 spring-cloud-alibaba-basis 创建基础依赖 首先我们创建一个spring-cloud-alibaba-basis 基础依赖 工程里面制定我们要用到的公用的版本 spring boot 版本 2.1.7.RELEASE spring cloud 版本 Greenwich.RELEASE...

qq_35809876的博客 915

云原生微服务实战 Spring Cloud Alibaba 之 Nacos

云原生微服务治理有很多手段,但在Java生态里,最主流的还是Spring Cloud Alibaba 、Spring Cloud Netflix。 Spring Cloud文章的前部分已经把Spring Cloud Netflix相关组件讲解且实践过了,这章我们讲解了Spring Cloud Alibaba的Nacos discovery,后续还会继续讲解完Spring Cloud Alibaba其他组件。

Java 技术专栏,从入门到精通,熟悉企业级开发 3万+

nacos的基本使用

nacos的基本使用

qq_53524948的博客 1万+

Spring Cloud Alibaba系列之Nacos服务注册与发现

Spring Cloud Alibaba系列之Nacos服务注册与发现,服务注册与发现是微服务架构体系中最关键的组件之一。Spring Cloud Alibaba Nacos Discovery组件提供了服务自动注册到 Nacos 服务端的功能,并且能够动态感知和刷新某个服务实例的服务列表。除此之外,Nacos Discovery 也将服务实例的一些元数据信息,例如 host,port, 健康检查 URL,主页等内容注册到 Nacos

Nicky's blog 3354

【Spring Cloud Alibaba】Nacos(一)

在Spring Cloud Alibaba套件中服务治理方面的核心组件是Nacos(Dynamic Naming and Configuration Service),在Spring Cloud Alibaba套件为基础的微服务中,Nacos担当的角色有服务发现和健康检测、服务注册中心(动态注册)、配置中心(动态配置)、服务元数据管理等功能。做为注册中心:Nacos管理所有的微服务,解决微服务调用之间的错综复杂、难以维护的问题。

Blue_Pepsi_Cola的博客 1695

Spring Cloud Alibaba 实战:Nacos 服务注册与发现详解

在微服务架构的世界里,服务注册与发现就像是整个系统的"通讯录",让各个服务能够互相找到并通信。本文将深入探讨Spring Cloud Alibaba生态中的核心组件——Nacos,带你从理论到实践,全面掌握服务注册与发现的精髓。我们将通过生动的比喻、详细的代码示例和实战案例,一步步揭开Nacos的神秘面纱,让你不仅理解其工作原理,更能在实际项目中灵活运用。无论你是微服务初学者还是有经验的开发者,这篇文章都将为你提供系统而实用的Nacos知识体系。想象一下,你经营着一家快速发展的餐厅。

AI架构全栈开发实战笔记 780

Spring Cloud Alibaba 的服务注册中心 Nacos 介绍

作者:禅与计算机程序设计艺术 1.简介 Nacos 是阿里巴巴开源的基于微服务的动态服务发现、配置和管理的服务中心,它不仅支持多数据中心和跨云环境,还支持 Kubernetes 和mesos 等容器管理平台。本文将从以下方面介绍 Nacos: 概念理解及功能特性

AI天才研究院 2859

Spring Cloud Alibaba+Nacos入门与测试

包含服务注册、配置管理、服务调用及完整的测试用例(单元测试和集成测试),涵盖代码和测试步骤。通过以上步骤,你已实现一个完整的微服务示例,并覆盖了核心功能的测试场景。

2501_90417743的博客 2052

verilog CORDIC对数运算

verilog CORDIC对数运算

m0_64355812的博客 1735

Alibaba之Nacos详解

本文为转载文章,原文作者:Wind Mt 原文链接:https://windmt.com/2018/11/09/intro-to-spring-cloud-alibaba-nacos/ 上个月最后一天的凌晨,Spring Cloud Alibaba 正式入驻了 Spring Cloud 官方孵化器,并在 maven 中央库发布了第一个版本。 目前 Spring Cloud Alibaba 还只...

徐刘根的博客 5万+

PCIe学习笔记(一)-------1.3 PCIe数据包(TLP,DLLP,PLP)

1,PCIe的层次结构 PICe设备在硬件电路上可以分为三个层次结构:事务层(Transaction Layer)、数据链路层(Data Link Layer)、物理层(Physical)。每一个层次又可以分为两个部分,分别为处理发送和处理接收的部分。 也可以分为四个层次,将事务层以上的层次称为软件层(Software Layer)。 2,PCIe数据包 前面已经说过PCIe之间是以数据包的形式来传输数据的,协议共定义了3类数据包。与处理层相关的是处理层数据包(TLP),与数据链路层相关的是数据

llxxyy507的博客 2万+

国宇测试盒GH7009 SPI读操作全解析:从接线到代码实现的避坑指南

本文详细解析了国宇GH7009测试盒进行SPI读操作的完整流程与避坑要点。重点阐述了硬件连接中IO2时序控制引脚的关键作用,提供了从接线方案、电源处理到上位机代码实现的实战指南,并针对常见的数据不稳定、特定寄存器读取失败等问题给出了具体解决方案。

dapp9builder的博客 223

Spring Cloud Alibaba 实战:轻松实现 Nacos 服务发现与动态配置管理

Nacos(Naming and Configuration Service)是阿里巴巴开源的一个服务注册中心和配置管理中心。它支持动态服务发现、配置管理和服务治理,适用于微服务架构,尤其是基于 Spring Cloud 和 Kubernetes 的应用。

遇见伯灵说的博客 3118

视源CVTE嵌入式面试题及参考答案(200+面试题,17万字)

内核模块如何设置? 内核模块是可在运行时动态加载到内核或从内核卸载的代码块。以下是设置内核模块的步骤: 首先,编写内核模块代码。通常使用 C 语言编写,包含必要的头文件,如<linux/init.h>、<linux/module.h>等。在代码中,需要定义模块的初始化函数和清理函数。初始化函数在模块加载时被调用,用于进行模块的初始化工作,如注册设备、分配资源等。清理函数在模块卸载时被调用,用于释放资源、注销设备等。 例如: #include <li

大模型大数据攻城狮的专栏 2204

spring-cloud-alibaba-nacos-discovery使用说明

Nacos-Client 作为微服务架构中连接 Nacos 服务端的核心组件,其版本选择需与上下游组件严格匹配,以确保功能稳定性和兼容性。:需与 Spring Boot 和 Spring Cloud 版本匹配(如 Spring Boot 2.7.x + Spring Cloud 2021.0.x)。的核心组件,通过与 Nacos Server 的深度集成,帮助开发者快速构建动态服务治理体系。通过以上版本匹配策略,可有效规避兼容性问题,确保服务注册、配置管理等核心功能的稳定性。调用时直接使用服务名(

技术人集结地 4048

LLM的MCP协议:初识MCP,搭建第一个MCP Server

MCP(Model Context Protocol),是一个开发的协议,标准化了应用程序如何为大模型提供上下文。MCP提供了一个标准的为LLM提供数据、工具的方式,使用MCP会更容易的构建Agent或者是基于LLM的复杂工作流。

Criss@陈磊 2万+

VS Code下载安装与使用教程

VSCode下载安装与使用教程

weixin_46713695的博客 4万+

芋道 Spring Cloud Alibaba 注册中心 Nacos 入门

点击上方“芋道源码”,选择“设为星标”做积极的人,而不是积极废人!源码精品专栏原创 | Java 2020 超神之路,很肝~中文详细注释的开源项目RPC 框架 Dubbo 源码解析网络...

芋艿V 1103

Trae 保姆级使用指南,零基础小白也能实现编程。

Trae 使用指南 Trae AI 使用 零基础编程 满血版 DeepSeek-R1&V3 AI IDE 深度理解中文开发场景 傻瓜式编程 编程入门 开发入门

Mr.L-OAM的博客 5815

spring cloud alibaba nacos 服务注册

配置文件里设置server.port=8848 时,客户端会先通过 8848 端口获取 Nacos 服务器的元信息,其中就包含了 gRPC 端口信息,之后再使用 gRPC 端口 9848 来进行后续的服务注册与发现操作。不直接创建springboot项目,引入springbootweb的依赖,创建一个web工程。配置:service。默认是spring.application.name的名字。相同的服务,分配在不同的机房。进入nacos的bin目录。启动后会在服务列表中看到。配置:metadata。

YUELEI118的博客 1145

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Spring Cloud Nacos

Nacos服务注册、服务发现、负载均衡、配置中心、健康检查、环境隔离、配置中心、配置数据库

每篇博客都不是最终版,都会随着我的学习更新 1969

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

上一篇: spring-cloud-alibaba入门学习(一)
下一篇: spring-cloud-alibaba入门学习(三)——使用openfeign访问实现负载均衡
若往夕之
博客等级 码龄9年 20粉丝 82原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值