栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

服务注册与调用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

服务注册与调用

 1、创建两个module分别为服务者和消费者,两者都需要注册在NacosServer中(这个server本质上就是一个web服务,端口默认为8848),然后服务提供者可以为服务消费者提供远端调用服务(例如支付服务为服务方,订单服务为消费方)。如上图所示。但是二者需要一个中间机去处理这些请求----从而调用了RestTemplate

    调用过程: 生产者服务创建及注册

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

        
         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.cy;

@SpringBootApplication
public class ProviderApplication {

    public static void main(String[] args) {
        SpringApplication.run(ProviderApplication.class, args);
    }
  }

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

第五步:创建服务类的服务对象,

第六步:打开浏览器,输入http://localhost:8081/provider/echo/msa,然后进行访问测试。

消费者服务发现及调用

1、在服务项目中创建一个服务对象,去对外提供服务。 

2、在消费项目中,首先配置pom文件,里面继承父类工程,添加web和服务发现的插件。


   
        org.springframework.boot
        spring-boot-starter-web
   

   
   
        com.alibaba.cloud
        spring-cloud-starter-alibaba-nacos-discovery
   

   

3、修改yml文件配置,

server:
  port: 8090
spring:
  application:
    name: sca-consumer #服务注册时,服务名必须配置
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848 #从哪里去查找服务

 4、创建消费项目的启动类,并实现服务消费

5、在启动类中添加一个方法,用于创建RestTemplate对象.---这个是web包提供的api

org.springframework.web.bind.annotation.RestController

6、定义服务消费端Controller,在此对象方法内部实现远端服务调用

  • 服务之间进行服务调用时,使用了什么API?(RestTemplate)---用此对象之前,需要先创建这个。

2、Nacos概念:

Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。 Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/582214.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号