iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Feign超时在yml文件里怎么配置
  • 548
分享到

Feign超时在yml文件里怎么配置

2023-07-02 10:07:30 548人浏览 泡泡鱼
摘要

这篇文章主要介绍“Feign超时在yml文件里怎么配置”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Feign超时在yml文件里怎么配置”文章能帮助大家解决问题。Feign超时 yml文件配置rib

这篇文章主要介绍“Feign超时在yml文件里怎么配置”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Feign超时在yml文件里怎么配置”文章能帮助大家解决问题。

Feign超时 yml文件配置

ribbon:#  #指建立连接后从服务端读取到可用资源所用的时间  ReadTimeOut: 10000#建立连接所用的时间,适用于网络状况正常的情况下,两端连接所需要的时间  ConnectTimeout: 5000

Feign用法和基本配置

SpringBoot集成Feign在不使用注册中心实现模块之间的调用

今天就来说下怎么使用Fegin在不使用注册中心的情况下进行模块之间的调用。原因是:在项目小的情况下,而且还必须要调用其他模块的接口,那么这个时候就要用fegin了,当然还有其他的方法,但我在这里只说这一种简单的方法。

上代码:

首先说下我的模块结构

Feign超时在yml文件里怎么配置

test1是根模块用于对子模块Maven坐标的版本控制管理其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">    <modelVersion>4.0.0</modelVersion>    <groupId>com.person</groupId>    <artifactId>test1</artifactId>    <packaging>pom</packaging>    <version>1.0-SNAPSHOT</version>    <modules>        <module>provider</module>        <module>consumer</module>        <module>pojo</module>    </modules>    <!--spring boot 环境 -->    <parent>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-parent</artifactId>        <version>2.1.0.RELEASE</version>        <relativePath/>    </parent>    <properties>        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>        <java.version>1.8</java.version>        <!--spring cloud 版本-->        <spring-cloud.version>Greenwich.RELEASE</spring-cloud.version>    </properties>    <!--引入Spring Cloud 依赖-->    <dependencyManagement>        <dependencies>            <dependency>                <groupId>com.person</groupId>                <artifactId>pojo</artifactId>                <version>1.0-SNAPSHOT</version>            </dependency>            <dependency>                <groupId>org.springframework.cloud</groupId>                <artifactId>spring-cloud-dependencies</artifactId>                <version>${spring-cloud.version}</version>                <type>pom</type>                <scope>import</scope>            </dependency>            <!--spring boot WEB-->            <dependency>                <groupId>org.springframework.boot</groupId>                <artifactId>spring-boot-starter-web</artifactId>                <version>2.1.1.RELEASE</version>            </dependency>            <!--feign-->            <dependency>                <groupId>org.springframework.cloud</groupId>                <artifactId>spring-cloud-starter-openfeign</artifactId>                <version>2.1.1.RELEASE</version>            </dependency>            <dependency>                <groupId>org.projectlombok</groupId>                <artifactId>lombok</artifactId>                <version>1.18.10</version>                <scope>provided</scope>            </dependency>        </dependencies>    </dependencyManagement></project>

紧接着在test1模块下新建两个模块分别为consumer,provider和pojo,其中consumer使用Feign调用provider模块的接口,pojo模块放实体类

首先在test1模块下新建pojo模块

pojo模块的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">    <parent>        <artifactId>test1</artifactId>        <groupId>com.person</groupId>        <version>1.0-SNAPSHOT</version>    </parent>    <modelVersion>4.0.0</modelVersion>    <artifactId>pojo</artifactId>    <dependencies>        <dependency>            <groupId>org.projectlombok</groupId>            <artifactId>lombok</artifactId>        </dependency>    </dependencies></project>

在pojo模块下新建Goods实体类供其他模块使用:

package com.person.pojo.consumer;import lombok.*;import javax.validation.constraints.NotNull;import java.io.Serializable;@Setter@Getter@AllArgsConstructor@NoArgsConstructor@Builder(toBuilder = true)public class Goods implements Serializable {    private static final long serialVersionUID = 1L;    @NotNull(message = "id不能为空")    private String id;    private String name;    private String price;    private String colour;}

consumer的yml文件:

server:  port: 8012

consumer的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">    <parent>        <artifactId>test1</artifactId>        <groupId>com.person</groupId>        <version>1.0-SNAPSHOT</version>    </parent>    <modelVersion>4.0.0</modelVersion>    <artifactId>consumer</artifactId>    <dependencies>        <dependency>            <groupId>com.person</groupId>            <artifactId>pojo</artifactId>        </dependency>        <!--feign-->        <dependency>            <groupId>org.springframework.cloud</groupId>            <artifactId>spring-cloud-starter-openfeign</artifactId>        </dependency>        <!--spring boot web-->        <dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-web</artifactId>        </dependency>    </dependencies></project>

首先在consumer的模块下新建feign调用类

package com.person.feign;import com.person.pojo.consumer.Goods;import org.springframework.cloud.openfeign.FeignClient;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RequestMapping;@FeignClient(name = "provider",url = "http://localhost:8011")@RequestMapping("/person")public interface GoodsFeignClient {    @GetMapping("/findone/{id}")    public Goods findOnebyId(@PathVariable("id") String id);}

上面代码所示 url代表想要调用的模块的前缀因为我的provider模块的端口是8011因此http://localhost:8011就是我的provider前缀,下面的请求路径“/person/findone/{id}”指的是我的provider模块接口路径

下面在consumer模块下新建controller方法:

package com.person.controller;import com.person.feign.GoodsFeignClient;import com.person.pojo.consumer.Goods;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.cloud.client.ServiceInstance;import org.springframework.cloud.client.discovery.DiscoveryClient;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestController@RequestMapping("/order")public class OrderController {      @Autowired    private GoodsFeignClient goodsFeignClient;    @GetMapping("/findone/{id}")    public Goods findOnebyId(@PathVariable("id") String id) {        return goodsFeignClient.findOnebyId(id);    }}

接下来新建provider模块

provider的yml文件:

server:  port: 8011

其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">    <parent>        <artifactId>test1</artifactId>        <groupId>com.person</groupId>        <version>1.0-SNAPSHOT</version>    </parent>    <modelVersion>4.0.0</modelVersion>    <artifactId>provider</artifactId>    <dependencies>        <dependency>            <groupId>org.projectlombok</groupId>            <artifactId>lombok</artifactId>        </dependency>        <dependency>            <groupId>com.person</groupId>            <artifactId>pojo</artifactId>        </dependency>        <!--spring boot web-->        <dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-web</artifactId>        </dependency>    </dependencies></project>

然后在provider 中新建controller:

package com.person.controller;import com.person.pojo.consumer.Goods;import com.person.service.GoodsService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;@RestController@RequestMapping("/person")public class GoodsController {    @GetMapping("/findone/{id}")    public Goods findOne(@PathVariable("id") String id) {        return new Goods("1","红苹果","8888","红色");    }}

这个时候在浏览器里面输入http://localhost:8012/order/findone/12回车

Feign超时在yml文件里怎么配置

关于“Feign超时在yml文件里怎么配置”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网精选频道,小编每天都会为大家更新不同的知识点。

--结束END--

本文标题: Feign超时在yml文件里怎么配置

本文链接: https://www.lsjlt.com/news/341394.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Feign超时在yml文件里怎么配置
    这篇文章主要介绍“Feign超时在yml文件里怎么配置”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Feign超时在yml文件里怎么配置”文章能帮助大家解决问题。Feign超时 yml文件配置rib...
    99+
    2023-07-02
  • Feign超时在yml文件里的配置方式
    目录Feign超时 yml文件配置Feign用法和基本配置首先说下我的模块结构首先在test1模块下新建pojo模块首先在consumer的模块下新建feign调用类接下来新建pro...
    99+
    2024-04-02
  • PHP文件中怎么配置超时时间
    今天小编给大家分享一下PHP文件中怎么配置超时时间的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、概要php.ini 和 ...
    99+
    2023-06-29
  • springboot怎么配置多个yml文件
    在Spring Boot中配置多个YAML文件可以通过以下步骤实现: 创建多个YAML文件,每个文件对应一个配置文件。例如,创建...
    99+
    2024-02-29
    springboot
  • java怎么读取yml配置文件
    在Java中读取YAML配置文件可以使用SnakeYAML库。以下是一个简单的示例,演示了如何读取YAML配置文件:1. 首先,确保...
    99+
    2023-08-18
    java
  • Springboot的yml配置文件怎么使用
    今天小编给大家分享一下Springboot的yml配置文件怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、服务配置...
    99+
    2023-07-05
  • SpringBoot配置文件方式,在线yml文件转properties
    目录一、SpringBoot可以识别4种配置文件二、配置文件优先级1.后缀优先级2.目录顺序优先级(从上至下)三、分享一下yml与properties配置转换一、SpringBoot...
    99+
    2024-04-02
  • mybatisplus怎么在yml中配置
    本篇内容主要讲解“mybatisplus怎么在yml中配置”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mybatisplus怎么在yml中配置”吧!pom配置<dependency>...
    99+
    2023-07-05
  • SpringBoot怎么动态修改yml配置文件
    本篇内容介绍了“SpringBoot怎么动态修改yml配置文件”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!前言记录下SpringBoot修...
    99+
    2023-06-29
  • Springboot读取yml配置文件里的参数值
    目录方式一 方式二 总结 方式一 1.yml配置 yml配置(示例): api: mes: MES_SOCKET: http://192.168.99.140:...
    99+
    2024-04-02
  • 如何在yml配置文件中使用中文注解
    目录yml配置文件中使用中文注解问题根本原因解决yml配置文件简单语法及小坑yml文件使用方法yml配置文件中使用中文注解 问题 我们在yml中写注解一般是这样的 #xxxx 当我们...
    99+
    2022-11-13
    yml配置文件 中文注解 yml使用中文注解
  • Springboot 如何指定获取出 yml文件里面的配置值
    之前写过一篇获取properties文件里面的值: Springboot 指定获取自己写的配置properties文件的值 www.jb51.net/article/217899.h...
    99+
    2024-04-02
  • docker-compose安装yml文件配置方法是什么
    这篇文章主要介绍“docker-compose安装yml文件配置方法是什么”,在日常操作中,相信很多人在docker-compose安装yml文件配置方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”d...
    99+
    2023-06-22
  • springboot yml配置文件值的注入方式是什么
    这篇文章跟大家分析一下“springboot yml配置文件值的注入方式是什么”。内容详细易懂,对“springboot yml配置文件值的注入方式是什么”感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下,希望阅读后能够...
    99+
    2023-06-26
  • mysql的配置文件在哪里
    在“开始 → 所有程序 → MySQL文件”下面找到MySQL的命令行客户端工具,右键查看属性,在“目标”里面可以看到MySQL使用的配置文件位置,注意:ProgramData目录可能是“隐藏”的,需要打开系统权限即可。...
    99+
    2024-04-02
  • Spring Boot怎么配置文件类型的properties格式与yml格式
    本篇内容介绍了“Spring Boot怎么配置文件类型的properties格式与yml格式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学...
    99+
    2023-06-30
  • php如何在配置文件中设置时区
    本篇内容主要讲解“php如何在配置文件中设置时区”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php如何在配置文件中设置时区”吧!php配置文件设置时区的方法:首先找到并打开配置文件“php.i...
    99+
    2023-06-20
  • 怎么在VBS中读取配置文件的配置项
    怎么在VBS中读取配置文件的配置项?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。以下是一个读取配置文件的函数:本函数仅适用于以下格式的配置文件(.ini,.txt,.inf...
    99+
    2023-06-08
  • springboot请求路径怎么配置在配置文件中
    今天小编给大家分享一下springboot请求路径怎么配置在配置文件中的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。请求路径...
    99+
    2023-06-29
  • 怎么在CentOS中配置网络配置相关文件
    怎么在CentOS中配置网络配置相关文件?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。CentOS 修改IP地址等网络相关的配置文件找到对应网卡的IP地址配置文件:ifcf...
    99+
    2023-06-07
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作