从springboot到springcloud第四篇----springcloud feign

上一章写了ribbon如何实现负载均衡,

这次搭建feign的负载均衡(feign整合了ribbon和hystrix熔断器(下一章添加))

 

一、创建feign-client服务

二、修改配置文件

spring.application.name=feign-client

# 应用服务 WEB 访问端口
server.port=8600

#服务中心地址
eureka.client.serviceUrl.defaultZone=http://localhost:8761/eureka/



三、在启动类上添加两个注解

@EnableEurekaClient
@EnableFeignClients
package com.example.feignclient;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.openfeign.EnableFeignClients;

@SpringBootApplication
@EnableEurekaClient
@EnableFeignClients
public class FeignClientApplication {

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

}

四、创建一个service接口调用eureka-client的服务

package com.example.feignclient.service;

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

@FeignClient(value = "eureka-client")
public interface EurekaClientService {

    @GetMapping("/index")
    String indexMessage();
}

五、创建一个外部调用的controller

package com.example.feignclient.controller;

import com.example.feignclient.service.EurekaClientService;
import com.netflix.discovery.converters.Auto;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class EurekaClientController {

    @Autowired
    private EurekaClientService eurekaClientService;

    @GetMapping("/index")
    public String index(){
        return eurekaClientService.indexMessage();
    }
}

六、刷新eureka服务监控中心测试

 

七、 访问feign-client服务

 

后语:

ribbon和feign的主要区别:

ribbon:使用RestTemplate模拟http请求发送给其他服务(面向服务)

feign:定义接口和抽象方法进行调用(面向接口)

 

源码地址: https://github.com/houfanGitHub/springcloud.git

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值