当前位置: 首页 > news >正文

elasticsearch Connection reset by peer如何处理

如何处理:
代码的心跳代码删除,服务linux内核参数修改 客户端时间要小于服务端时间#异常代码
public RestHighLevelClient elasticsearchClient() {// 初始化 RestClient, hostName 和 port 填写集群的内网 IP 地址与端口
//        String[] hosts = nodes1.split(",");
//        HttpHost[] httpHosts = new HttpHost[hosts.length];
//        for (int i = 0; i < hosts.length; i++) {
//            httpHosts[i] = new HttpHost(hosts[i], port1, "http");
//        }String[] hosts = uris.split(":");HttpHost[] httpHosts = new HttpHost[1];httpHosts[0] = new HttpHost(hosts[0], Integer.valueOf(hosts[1]), "http");// 设置认证信息CredentialsProvider credentialsProvider = new BasicCredentialsProvider();credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(username, password));RestClientBuilder builder = RestClient.builder(httpHosts);//异步链接延时配置builder.setRequestConfigCallback(requestConfigBuilder ->requestConfigBuilder        .setConnectTimeout(5000) //5秒.setSocketTimeout(5000 * 1000).setConnectionRequestTimeout(5000 * 1000));//异步链接数配置builder.setHttpClientConfigCallback(httpClientBuilder -> {//最大连接数100个httpClientBuilder.setMaxConnTotal(100);//最大路由连接数httpClientBuilder.setMaxConnPerRoute(100);httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider);// 设置KeepAlive为5分钟的时间,不设置默认为-1,也就是持续连接,然而这会受到外界的影响比如Firewall,会将TCP连接单方面断开,从而会导致Connection reset by peer的报错
httpClientBuilder.setKeepAliveStrategy((response, context) -> TimeUnit.MINUTES.toMillis(3))
.setDefaultIOReactorConfig(IOReactorConfig.custom().setIoThreadCount(1).setSoKeepAlive(true).build());
        return new RestHighLevelClient(builder);}

正确代码:

 public RestHighLevelClient elasticsearchClient() {// 初始化 RestClient, hostName 和 port 填写集群的内网 IP 地址与端口
//        String[] hosts = nodes1.split(",");
//        HttpHost[] httpHosts = new HttpHost[hosts.length];
//        for (int i = 0; i < hosts.length; i++) {
//            httpHosts[i] = new HttpHost(hosts[i], port1, "http");
//        }String[] hosts = uris.split(":");HttpHost[] httpHosts = new HttpHost[1];httpHosts[0] = new HttpHost(hosts[0], Integer.valueOf(hosts[1]), "http");// 设置认证信息CredentialsProvider credentialsProvider = new BasicCredentialsProvider();credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(username, password));RestClientBuilder builder = RestClient.builder(httpHosts);//异步链接延时配置builder.setRequestConfigCallback(requestConfigBuilder ->requestConfigBuilder//.setConnectTimeout(5000) //5秒//.setSocketTimeout(5000 * 1000).setConnectionRequestTimeout(5000 * 1000));//异步链接数配置builder.setHttpClientConfigCallback(httpClientBuilder -> {//最大连接数100个httpClientBuilder.setMaxConnTotal(100);//最大路由连接数httpClientBuilder.setMaxConnPerRoute(100);httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider);// 设置KeepAlive为5分钟的时间,不设置默认为-1,也就是持续连接,然而这会受到外界的影响比如Firewall,会将TCP连接单方面断开,从而会导致Connection reset by peer的报错httpClientBuilder.setDefaultIOReactorConfig(IOReactorConfig.custom().setSoKeepAlive(true).build());return httpClientBuilder;});return new RestHighLevelClient(builder);}

相关文章:

  • python爬虫中 HTTP 到 HTTPS 的自动转换
  • colab notebook导出为PDF
  • 利用企业被执行人信息查询API保障商业交易安全
  • 5、Qt:项目中包含多个子项目(.pro)/子模块(.pri)
  • Linux:docker容器操作(4)
  • [网络] 5. TCP 链接的建立与释放~汇总
  • 怎样解决微信上传头像失败的问题?照片尺寸修改方法分享
  • 王者荣耀小游戏
  • 4:kotlin 方法(Functions)
  • 实现简单的操作服务器和客户端(下)
  • SpringBoot_websocket实战
  • 【ArcGIS Pro微课1000例】0035:栅格影像拼接(dem高程数据)
  • VMware 系列:vSphere Client安装配置常见问题及解决方案
  • PHP基础与安全
  • 用户选择PowerFlex的十大理由
  • 【Under-the-hood-ReactJS-Part0】React源码解读
  • java多线程
  • react-native 安卓真机环境搭建
  • WinRAR存在严重的安全漏洞影响5亿用户
  • 翻译:Hystrix - How To Use
  • 开源SQL-on-Hadoop系统一览
  • 聊一聊前端的监控
  • 每天一个设计模式之命令模式
  • zabbix3.2监控linux磁盘IO
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • #{}和${}的区别?
  • (function(){})()的分步解析
  • (java版)排序算法----【冒泡,选择,插入,希尔,快速排序,归并排序,基数排序】超详细~~
  • (原創) 如何使用ISO C++讀寫BMP圖檔? (C/C++) (Image Processing)
  • (转)http协议
  • .bat批处理(二):%0 %1——给批处理脚本传递参数
  • .bat批处理(三):变量声明、设置、拼接、截取
  • .bat文件调用java类的main方法
  • .gitignore文件—git忽略文件
  • .Net 8.0 新的变化
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .Net 访问电子邮箱-LumiSoft.Net,好用
  • .NET/C# 中你可以在代码中写多个 Main 函数,然后按需要随时切换
  • /etc/skel 目录作用
  • /usr/bin/python: can't decompress data; zlib not available 的异常处理
  • @Transactional注解下,循环取序列的值,但得到的值都相同的问题
  • @开发者,一文搞懂什么是 C# 计时器!
  • [ Linux 长征路第五篇 ] make/Makefile Linux项目自动化创建工具
  • [1]-基于图搜索的路径规划基础
  • [20190113]四校联考
  • [bzoj1901]: Zju2112 Dynamic Rankings
  • [C++]——带你学习类和对象
  • [CISCN 2023 初赛]go_session
  • [IDF]被改错的密码
  • [IE编程] IE8的SDK 下载
  • [iOS]-NSTimer与循环引用的理解
  • [JavaWeb学习] Spring Ioc和DI概念思想
  • [Json.net]快速入门
  • [JS设计模式]Prototype Pattern
  • [LaTex]arXiv投稿攻略——jpg/png转pdf