springcloud费话之Eureka接口调用(feign)

目录:

springcloud费话之Eureka基础

springcloud费话之Eureka集群

springcloud费话之Eureka服务访问(restTemplate)

springcloud费话之Eureka接口调用(feign)

springcloud费话之断路器(hystrix in feign)

springcloud费话之配置中心基础(SVN)

springcloud费话之配置中心客户端(SVN)

 

使用eureka服务发现实现服务器之间的http访问(feign)

 

使用restTemplate的访问方式还是比较复杂的,需要对其中的一些内容进行解析,增加了代码

因此在服务调用之间,希望恢复单应用的调用service一样简单,于是使用feign的调用方式

因为feign底层是使用了ribbon作为负载均衡的客户端,而ribbon的负载均衡也是依赖于eureka 获得各个服务的地址,所以要引入eureka-client,实际上上述的依赖并不需要更改

具体流程如下:

 

1.依赖

 

首先在springcloud官方网站上找到feign依赖,如下图

复制进pom

2.添加启动类注解

 

在启动类上添加注解@EnableFeignClients,添加后代码如下:

package com.lyh.lyh_eureka_server;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.openfeign.EnableFeignClients; @SpringBootApplication @EnableEurekaClient @EnableFeignClients public class EurekaClientRun { public static void main(String[] args) { SpringApplication.run(EurekaClientRun.class, args); } }

 

 3.创建feign的访问接口,代码如下:

package com.lyh.lyh_eureka_server.Interface;

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;

//这里为请求的服务器的spring的name @FeignClient("eureka-client") public interface FeignService {
  //映射名 @RequestMapping("/getInfo") public String getInfo(); }

 

4.创建上述接口的实现类,部分代码如下:

 

t eurekaClient;
    
    @Resource
    private FeignService feignService;

    // 触发的接口 by feign
    @RequestMapping("/getInfoFromClientByFeign")
    public Object getInfoFromClientByFeign() throws URISyntaxException {
        String obj = feignService.getInfo();
        System.out.println(obj.toString());
        return obj; }

 

 

5.将如上代码复制到client2和client3中

 

6.测试

 

 

转载于:https://www.cnblogs.com/liuyuhangCastle/p/11397262.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值