配置

package xyz.kszs.config;import org.apache.http.client.HttpClient;
import org.apache.http.conn.HttpClientConnectionManager;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.client.ClientHttpRequestFactory;
import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
import org.springframework.web.client.RestTemplate;@Configuration
public class RestTemplateConfig {@Beanpublic RestTemplate restTemplate(ClientHttpRequestFactory factory){//boot中可使用RestTemplateBuilder.build创建RestTemplate restTemplate=new RestTemplate();//配置请求工厂restTemplate.setRequestFactory(factory);//默认底层执行 HttpURLConnectionreturn restTemplate;}@Beanpublic ClientHttpRequestFactory clientHttpRequestFactory(HttpClient httpClient) {HttpComponentsClientHttpRequestFactory clientHttpRequestFactory = new HttpComponentsClientHttpRequestFactory();// httpClient创建器clientHttpRequestFactory.setHttpClient(httpClient);// 连接超时时间/毫秒(连接上服务器(握手成功)的时间,超出抛出connect timeout)clientHttpRequestFactory.setConnectTimeout(5 * 1000);// 数据读取超时时间(socketTimeout)/毫秒(务器返回数据(response)的时间,超过抛出read timeout)clientHttpRequestFactory.setReadTimeout(10 * 1000);// 连接池获取请求连接的超时时间,不宜过长,必须设置/毫秒(超时间未拿到可用连接,会抛出org.apache.http.conn.ConnectionPoolTimeoutException: Timeout waiting for connection from pool)clientHttpRequestFactory.setConnectionRequestTimeout(10 * 1000);return clientHttpRequestFactory;}@Beanpublic HttpClient httpClient(HttpClientConnectionManager poolingHttpClientConnectionManager) {HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();// 设置http连接管理器httpClientBuilder.setConnectionManager(poolingHttpClientConnectionManager);return httpClientBuilder.build();}@Beanpublic HttpClientConnectionManager poolingHttpClientConnectionManager() {PoolingHttpClientConnectionManager poolingHttpClientConnectionManager = new PoolingHttpClientConnectionManager();// 最大连接数poolingHttpClientConnectionManager.setMaxTotal(500);// 同路由并发数(每个主机的并发)poolingHttpClientConnectionManager.setDefaultMaxPerRoute(100);return poolingHttpClientConnectionManager;}}

RestTemplateConfig相关推荐

  1. 史上最详细的RocketMq 下单支付案例 分享

    1. 案例介绍 1.1 业务分析 模拟电商网站购物场景中的[下单]和[支付]业务 1)下单 用户请求订单系统下单 订单系统通过RPC调用订单服务下单 订单服务调用优惠券服务,扣减优惠券 订单服务调用调 ...

  2. springboot-24-restTemplate的使用

    项目中使用的是HttpClient, 后来改成springboot, 偶然间发现restTemplate 原博客: http://blog.csdn.net/u013895412/article/de ...

  3. Spring Cloud【Finchley】实战-03订单微服务与商品微服务之间的调用

    文章目录 Spring Cloud[Finchley]专栏 概述 HTTP方式之RestTemplate 方式一 (直接使用restTemplate访问URL,url写死) 方式二 (使用LoadBa ...

  4. easypoi教程_SpringBoot图文教程17—上手就会 RestTemplate 使用指南

    有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文教程系列文章目录 SpringBoot图文教程1-Spr ...

  5. springboot集成restTemplate实现rest接口调用

    目录 一restTemplate简介 二restTemplate常用方法列表 2.1 get请求方法预览 2.2 post方法请求预览 2.3put请求方法预览 2.4 delete请求方法预览 2. ...

  6. Spring Cloud:使用Ribbon实现负载均衡详解(下)

    在上一篇文章(Spring Cloud:使用Ribbon实现负载均衡详解(上))中,我对 Ribbon 做了一个介绍,Ribbon 可以实现直接通过服务名称对服务进行访问.这一篇文章我详细分析一下如何 ...

  7. SpringCloud教程- 服务链路追踪(Spring Cloud Sleuth)(SpringCloud版本Greenwich.SR4)

    文章目录 一.Sleuth简介 二.为何使用Sleuth 三.构建工程 server-zipkin zipkin-serivce-hi zipkin-server-hello 四. 启动工程演示 代码 ...

  8. RestTemplate带参发送get及post请求携带headers请求头代码示例

    一.发送get请求携带headers @Testpublic void testGetWithHeaders(){HttpHeaders headers = new HttpHeaders();hea ...

  9. 【spring boot】 使用 RestTemplate

    这里写目录标题 前言 准备 引入 lib 创建 RestTemplate Bean 认识一下RestTemplate getForObject 示例 简单调用 参数拼接 postForEntity 示 ...

最新文章

  1. kali linux 安装java_kali linux安装java
  2. java取路径含中文_java获取项目路径中文乱码
  3. 罗永浩直播翻车频现,抖音选错了吗?
  4. 系统监理师备考经验分享
  5. Label Assign综述:提升目标检测上限
  6. 2019-2020年度总结
  7. 关于用 ABAP 代码手动触发 SAP CRM organization Model 自动决定的研究
  8. 教你如何用 lib-flexible 实现移动端H5页面适配
  9. cur前缀_每天1分钟背单词 词根cur
  10. 解决小米wifi在windows10无法创建问题
  11. 软件测试 等价类/边界值分析/随机数生成
  12. 李岩 太极计算机,《高中体育游戏300例》李岩_孔网
  13. 淘宝店铺装修图片常用尺寸有哪些?淘宝图片大小要求
  14. mt管理器主题修改教程_华为微信气泡怎么设置皮肤 微信怎么改猫和老鼠的主题和气泡?...
  15. HDFS命令:hdfs dfs
  16. manjaro安装tim
  17. 如何从一个虚拟主机迁移数据到另一个虚拟主机
  18. Idea中Git和SVN如何切换
  19. 百度关键词推广选词技巧,你了解多少?
  20. vue技术分享ppt_胡中南:Web端GIS技术新进展 | GTC专题论坛报告(视频+PPT+速记)

热门文章

  1. 通信协议之IIC协议(eeprom)_通俗易懂篇!
  2. java数组找出重复元素及次数_Java查找数组重复元素,并打印重复元素、重复次数、重复元素位置...
  3. 如果生活中有什么结解不开,那就打个蝴蝶结吧
  4. java计算机毕业设计ssm党支部在线学习系统
  5. idea IntelliJ IDEA 2018.2.5 x64 破解
  6. Ubuntu 如何搭建可视化界面?
  7. Openstack基础架构
  8. 视频剪辑软件如何合并分割视频文件
  9. Java获取IP和端口(Linux)
  10. matlab中axis square与axis equal区别