04-Nacos服务注册中心应用实践

本文详细介绍了如何使用Nacos作为服务注册中心,包括服务提供者和消费者的应用实践。首先,创建并配置服务提供者项目,完成服务注册,然后启动服务并验证其在Nacos中的状态。接着,创建服务消费者项目,实现服务调用,通过RestTemplate或LoadBalancerClient进行负载均衡。最后,讨论了Feign客户端在服务调用中的应用,简化了服务间的交互。
摘要由CSDN通过智能技术生成

第二步:访问Nacos服务。

打开浏览器,输入http://localhost:8848/nacos地址,出现如下登陆页面:

在这里插入图片描述

其中,默认账号密码为nacos/nacos.

服务注册与调用入门(重点)

=======================================================================

业务描述


创建两个项目Module分别为服务提供者和服务消费者(假如已有则无需创建),两者都要注册到NacosServer中(这个server本质上就是一个web服务,端口默认为8848),然后服务提供者可以为服务消费者提供远端调用服务(例如支付服务为服务提供方,订单服务为服务消费方),如图所示:

在这里插入图片描述

生产者服务创建及注册


第一步:创建服务提供者工程(module名为sca-provider,假如已有则无需创建),继承parent工程(01-sca),其pom.xml文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns=“http://maven.apache.org/POM/4.0.0”

xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”

xsi:schemaLocation=“http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”>

01-sca

com.jt

1.0-SNAPSHOT

4.0.0

sca-provider

org.springframework.boot

spring-boot-starter-web

com.alibaba.cloud

spring-cloud-starter-alibaba-nacos-discovery

第二步:创建并修改配置文件application.yml(或者application.properties),实现服务注册,关键代码如下:

server:

port: 8081

spring:

application:

name: sca-provider #进行服务注册必须配置服务名

cloud:

nacos:

discovery:

server-addr: localhost:8848

注意:服务名不要使用下划线(“_”),应使用横杠(“-”),这是规则。

第三步:创建启动类(假如已有则无需定义),关键代码如下:

package com.jt;

@SpringBootApplication

public class ProviderApplication {

public static void main(String[] args) {

SpringApplication.run(ProviderApplication.class, args);

}

}

第四步:启动启动类,然后刷先nacos服务,检测是否服务注册成功,如图所示:

在这里插入图片描述

第五步:停掉sca-provider服务,然后不断刷新nacos服务列表,检查服务的健康状态。

消费者服务发现及调用


第一步: 在sca-provider项目中创建服务提供方对象,基于此对象对外提供服务,例如:

package com.jt.provider.controller;

/**定义Controller对象(这个对象在spring mvc中给他的定义是handler),

  • 基于此对象处理客户端的请求*/

@RestController

public class ProviderController{

//@Value默认读取项目配置文件中配置的内容

//8080为没有读到server.port的值时,给定的默认值

@Value(“${server.port:8080}”)

private String server;

//http://localhost:8081/provider/echo/tedu

@GetMapping(“/provider/echo/{msg}”)

public String doRestEcho1(@PathVariable String msg){

return server+" say hello "+msg;

}

}

第二步:创建服务消费者工程(module名为sca-consumer,假如已有则无需创建),继承parent工程(01-sca),其pom.xml文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns=“http://maven.apache.org/POM/4.0.0”

xmlns:xsi=“http://www.w3.org/2001/XM

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值