美文网首页
springcloud服务请求报超时失败和文件下载损坏

springcloud服务请求报超时失败和文件下载损坏

作者: 莫夏_b560 | 来源:发表于2019-08-11 19:04 被阅读0次

(一) 请求接口不稳定
1、测试环境是五六个服务部署在一台机器上
2、生产是部署在不同环境上

问题:
1、测试环境页面请求正常,下载文件正常
2、生产环境接口请求超时,文件下载损坏

排查:
1、页面接口请求不稳定,连续刷新请求,会有几次报错,根据报错排查,误以为是服务熔断,后续发现是生产ribbon配置漏加。

解决:
1、ribbon配置

ribbon.ConnectTimeout=120000
ribbon.ReadTimeout=30000

2、熔断部分代码逻辑修改,避免混淆,导致误判

3、文件下载损坏
(1)由于服务不稳定,获取文件流异常,前端blob接受生成文件异常
(2)文件下载流写法有问题,导致.docx文件下载损坏。

//                    while (is.read(buffer) > 0) {
//                        out.write(buffer);
//                    }

( 读取文件的时候,指定每次读取长度,如果长度不足,导致强行写入空字符破坏文件结构,修改如下,解决问题。)

                    int len = 0;
                    while((len = is.read(buffer)) >0){
                        out.write(buffer, 0, len);
                    }

相关文章

  • springcloud服务请求报超时失败和文件下载损坏

    (一) 请求接口不稳定1、测试环境是五六个服务部署在一台机器上2、生产是部署在不同环境上 问题:1、测试环境页面请...

  • vue 流文件下载

    同事做文件下载下载后的文件 无法打开,报 文件已损坏 或 格式不正确

  • 请求超时

    请求超时分两种:前端超时,服务端超时1.服务端超时:当请求到服务端默认超时时间还是无响应,服务端会自动断开请求2....

  • 对AFNetworking的简单封装

    新版 :AFNetworking 3.X 的二次封装(GET、POST、文件上传、文件下载、超时、HTTPS、请求...

  • RPC之美团pigeon源码分析(四)熔断和降级

    服务的熔断指的是当调用方对服务的请求出现大量的超时和失败的情况下,后续对该服务的请求将不再发起调用,直接返回。保证...

  • OkHttp请求极限情况

    在若网络或者WIFI不稳定的情况下下载文件,请求返回200,然后请求response的Stream时超时,导致下载...

  • 服务超时总结

    介绍 请求超时,客户端给服务端发送请求时超时,此时服务端没有收到客户端的请求; 服务端内部超时,服务端可能存在DB...

  • Springcloud Feign请求超时

    由于在服务提供项目中,过一段时间可能会休眠,启用时需要一些时间,当调用方调用是出现以下异常 application...

  • Mac 升级到10.12 出现的各种问题解决

    [TOC] 基础编译无法工作 不显示允许任何来源 –安装文件下载损坏问题 表现为下载文件损坏,和不显示允许任何来源...

  • AFNetworking设置请求网络超时

    有时候可能请求某个服务器接口很慢会导致请求超时,所以需改变默认的请求超时时间。

网友评论

      本文标题:springcloud服务请求报超时失败和文件下载损坏

      本文链接:https://www.haomeiwen.com/subject/hwbsjctx.html