elaticsearch TransportClient首次获取连接比较慢的原因及解决方案 2C

在javaweb程序服务器启动后,首次从es查询数据时获取TransportClient都会比较久,后面查询重新获取TransportClient会相对快点,不知道具体是什么原因造成的,如果各位大侠有解决过相同的问题麻烦分享下问题原因及解决方案,非常感谢。

获取TransportClient代码如下:

public static Client getClient() throws UnknownHostException {
    Client client = null;
    try {        

        if (StringUtils.isEmpty(ip)) {
            ip = def_ip;
        }

        if (port == 0) {
            port = def_port;
        }

        client = TransportClient.builder().build().addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(ip), port));

    }
    catch (Exception e) {
        e.printStackTrace();
    }

    return client;
}
0

7个回答

图片说明

0

图片说明
图片说明

0

图片说明
图片说明
图片说明
vi /etc/profile
source /etc/profile
图片说明
图片说明

0

Java -version
图片说明
Vi server.xml
图片说明
图片说明
vi /etc/sysconfig/iptables
/etc/init.d/iptables restart

图片说明
linux tomcat shutdown命令杀不死进程问题
解决方案三:
  基本原理为启动tomcat时记录启动tomcat的进程id(pid),关闭时强制杀死该进程

第一步 :vim修改tomcat下bin/catalina.sh文件,添加点东西,主要是记录tomcat的pid,如下:
#设置记录CATALINA_PID。

#该设置会在启动时候bin下新建一个CATALINA_PID文件

#关闭时候从CATALINA_PID文件找到pid,kill。。。同时删除CATALINA_PID文件

if [ -z "$CATALINA_PID" ]; then

  CATALINA_PID=$PRGDIR/CATALINA_PID

Fi

0

图片说明
第二步 vim tomcat的shutdown.sh文件,在最后一行加上-force:
图片说明
图片说明
图片说明
图片说明

0

修改jar包日志
图片说明
jar cvf elasticsearch-2.4.0.jar config META-INF org es-build.properties
图片说明
图片说明
图片说明

0

导出war包
<?xml version="1.0" encoding="UTF-8"?>












<target name="clean" description="delete dist directory">
    <delete dir="${classes}" />
    <delete dir="${rel.dir}" />
</target>

<target name="compile" depends="clean" description="create ${classes} path, compile source and put binary file in ${classes} path">
    <mkdir dir="${classes}" />
    <javac destdir="${classes}" target="1.7" debug="true" deprecation="false" optimize="false" 
        failonerror="true" encoding="UTF-8">
        <src path="${src.dir}" />
        <classpath refid="lib_classpath" />
    </javac>
</target>

<target name="copyXml" description="put configuration in the ${classes} path">
    <copy todir="${classes}">
        <fileset dir="${src.dir}">
            <include name="**/*.xml" />
        </fileset>
    </copy>
</target>
<!--
<target name="copyMetaInf" description="put meta-inf context.xml in the ${dist} path">
    <copy todir="${dist}/META-INF">
        <fileset dir="WebContent/META-INF">
            <include name="context.xml" /> 
        </fileset>
    </copy>
</target>
-->

<target name="copyProperties" description="put properties in the ${dist} path">
    <copy todir="${classes}">
        <fileset dir="${src.dir}">
            <include name="**/*.properties" />
        </fileset>
    </copy>
</target>

<target name="war" depends="compile,copyXml" description="generate war" >
    <war destfile="${dist}/${project.name}.war" webxml="WebContent/WEB-INF/web.xml" duplicate="preserve"> 
        <fileset dir="WebContent">
            <!--exclude name="WEB-INF/lib/*.jar" /-->
            <exclude name="WEB-INF/web.xml" />
            <!--exclude name="META-INF/*" /-->
        </fileset>
        <lib dir="${build.lib.dir}">
        </lib>
        <classes dir="${classes}"/>
    </war>
    <mkdir dir="${rel.dir}" />
    <copy file="${dist}/${project.name}.war" todir="${rel.dir}"/>

</target>

图片说明
图片说明
图片说明
图片说明

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Elasticsearch client 只创建一次连接节省资源
由于业务需要本人正在使用es,将es里面的数据取出来展现的页面上?  这个操作对于大牛来说,简直就是小菜一碟。 但是对于我这种菜鸡来说挺难得。 反正大牛做什么都是正确 的, 其实就是把client的连接代码抽取出来,不需要每次调用的时候都需要创建新的连接, 好了我们看一下代码。 //连接client TransportClient client = null; InetAddres
elasticsearch(六)调用TransportClient查询结果处理
SearchResponse 是查询结果对象,此处是我用哪个到的列表查询处理公共处理工具类,能使用分页对象 和查询所有对象疯长成对应的List集合。 工具类中使用gson进行查询结果和泛型的对象实现bean属性值的copy操作。 import com.github.miemiedev.mybatis.paginator.domain.PageBounds; import com.github...
ELK研究(一):elasticsearch java api接口操作ES集群 ---TransportClient的使用介绍 bulk批量提交数据
Java client操作ES: 1:配置集群对象信息;2:创建客户端;3:查看集群信息 1、设置集群名字 默认集群名为elasticsearch,如果集群名称和指定的不一致则在使用节点资源时会报错。Settings settings = Settings.builder() .put("cluster.name", "myClusterName").build(); T
Elasticsearch5.5.1 JAVA客户端TransportClient示例
Elasticsearch5.5.1 JAVA客户端TransportClient相关的示例,包含CRUD,bulk,相关介绍请参考:http://blog.csdn.net/u011781521/article/details/77848489
第一次访问页面速度慢,以后每次的速度都比较快的问题原因分析及解决
第一次访问页面速度慢,以后每次的速度都比较快的问题原因分析及解决 问题描述 在我们第一次打开访问Jsp页面时速度会比较慢,但以后每次的速度都比较快。 原因分析 在第一次打开Jsp页面时,有一个转换和编译过程,将Jsp文件编译成.Java或者.class文件; .Java文件是一个继承自http servlet类的,也就是将.Jsp转换为servlet代码,所以,.Jsp也可以看成是一个servl...
ElasticSearch6.X版本Java Api中文详解(一)之TransportClient客户端连接方式
 TransportClient使用传输模块远程连接到一个弹性搜索集群。它不加入集群,但只获得一个或多个初始传输ip地址,并在每个动作上与它们进行轮询(尽管大多数操作可能是&quot;two hop&quot; 操作)。// on startup TransportClient client = new PreBuiltTransportClient(Settings.EMPTY) .addTran...
Http首次访问较慢原因
今天在测试时发现http和https性能差距明显(nginx),个人在POSTMAN测试后发现的现象: 1 http第一次访问比较慢 2 https第一次访问会比较慢 3 http 和https存在非常明显的差异,http和https第一访问用时性能差距十分明显,但第二次访问用时差距不大了。 虽然服务器在墙外,但这个速度还是无法接受,整理了下需要回答这三个问题所需要用到的知识,关于更专业的...
elasticsearch-6.6.6.jar下载
java 连接 elasticsearch 需要用到的jar包,ElastiSearch 6.0.0使用java api获取TransportClient连接ES集群、插入文档、进行搜索
elasticsearch(七)调用TransportClient查询结果聚合统计分组
聚合分析是数据库中重要的功能特性,完成对一个查询的数据集中数据的聚合计算,如:找出某字段(或计算表达式的结果)的最大值、最小值,计算和、平均值等。ES作为搜索引擎兼数据库,同样提供了强大的聚合分析能力。 对一个数据集求最大、最小、和、平均值等指标的聚合,在ES中称为指标聚合   metric而关系型数据库中除了有聚合函数外,还可以对查询出的数据进行分组group by,再在组上进行指标聚合。在 ...
elasticsearch(八)调用TransportClient统计查询结果处理
聚合查询后,使用不同的聚合获取值的方式也不相同。 针对上篇第一查询处理 //聚合处理 SearchSourceBuilder sourceBuilder = new SearchSourceBuilder(); // 总和, 平均值, 最大值,最小值 AbstractAggregationBuilder valueCountAggregationBuilder = AggregationBu...
ElasticSearchTransportClient集成SearchGuard插件实现索引级别的权限管控
ElasticSearchTransportClient集成SearchGuard插件实现索引级别的权限管控 由于官方的X-pack收费,所以退而求其次选择了SearchGuard作为ElasticSearch集群的安全权限管控组件。如果已经按照官网标准为ElasticSearch每个节点都安装好了SearchGuard插件 集群环境: 三台ElasticSearch节点版本5.4.3; ...
ElasticSearch详解一之——client连接
获得 elasticsearch 客户端很简单。最常见方式是通过︰创建节点,作为一个群集中的节点。从你的节点请求客户端。 另一种方式是通过创建连接到集群的 TransportClient。 这个在之前的文章写到到创建连接集群的TransportClient方法。 现在主要来说创建节点的方法:创建节点最简单的方式Node node = nodeBuilder().node(); Client c
mysql连接慢的一个原因
问题: 使用navicat访问数据库时每次打开一个表都很慢 解决方法: 1、show processlist发现在Command列是Connect, State是Login时等待了许久,说明是连接慢,不是访问数据慢 2、百度发现了一个skip-name-resolve参数,禁止mysql做dns查询 3、问题产生原因:由于本地机器没有配置网关,解析dns超时,导致连接慢 4、问
SpringBoot多数据源从库第一次执行SQL很慢的原因
今天开发时偶尔发现从库的第一次SQL执行的速度很慢,所以就进行了一系列排查,后来发现是因为多数据源的情况下,从库都是采用懒加载的形式进行加载的,所以就会出现第一次执行SQL很慢的现象,可以从以下两点进行证明:证明一这是项目刚启动的时候,主库进行了初始化: 而当访问到从库时,第二个数据源才会进行初始化: 证明二因为我是用Druid作数据库...
Elasticsearch连接池设计实现
ss21222222222222222222222222222222222222222222222222222222222222222222222222222222222
ES的transportClient初始化过程解析
TransportClient的初始化流程 创建client的代码 在初始化TransportClient的时候,我们将嗅探模式开启,即client.transport.sniff设置为true. Settings settings = Settings.settingsBuilder() .put(&quot;client.transport.sniff&quot;, true).p...
Spring整合Elasticsearch5.5.1的TransportClient客户端
Spring整合Elasticsearch5.5.1的TransportClient客户端:http://blog.csdn.net/u011781521/article/details/77891192
spark中直接使用es的client
因为jar冲突,es client使用的httpjar被忽略,所以导致报错,所以使用以下命令确保用户的jar被优先加载。 spark-submit --class SparkTest --master yarn  --deploy-mode client \ --driver-cores 1 \ --driver-memory 1G \ --num-executors 1 \ --exe
连接第一次连接MySqL数据库 相当慢
使用Java程序连接MySql数据库时,发现启动相关慢。 对代码进行测试,发现第一次连接时较慢。 以前用C++连接Oracle时,也遇到类似的问题。 当时找到原因是由于Oracle对连接进行了域名解析,由于DNS服务器不可达,要等到连接超时后,才抛出异常。详细信息请参考 http://blog.csdn.net/lijing_lj928/article/details/46953085 点
Elasticsearch笔记九之优化
elasticsearch优化,极速查询
ElasticSearch的简单运用以及枚举实现单例模式
在公司做小店铺的电商项目的时候,自己虽然大部分任务是放在前端,但是也在群里听到他们说清ES的数据,我就在想ES是个什么玩意,然后便去搜索看看。发现ES也就是ElasticSearch。 ElasticSearch是基于 Lucene的搜索服务器,它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful接口。RESTful指的是具有REST风格架构风格的。对于REST:分布式应用架构风格,其...
使用java访问elasticsearch创建索引
1、添加maven依赖 [code=&quot;xml&quot;] org.elasticsearch elasticsearch 0.90.0 [/code] 建议使用maven管理项目,因为elasticsearch还有很多依赖包,手工维护很麻烦 2、创建连接elasticsearch服务的client [code=&quot;java&quot;] Settings settings = Immu...
第一次连接数据库时速度很慢问题解决
问题描述: 在web容器加载完毕后,调用接口时,init连接池时,速度很慢 速度可能在1分钟左右,主要是因为它会先去查询DNS,然后再连接。 解决方案:在mysql的配置文件中配置skip-name-resolve 结果:速度有明显提升 具体步骤: 1.查找到mysql的配置文件 (这里我是在/etc/my.cnf) 2.修改配置文件 主要是在 ...
mysql第一次查询速度很慢
问题描述: mysql第一次访问速度慢
解决冷启动电脑后第一次读取Sqlite数据库缓慢的问题
转载请说明原出处,谢谢~~:http://blog.csdn.net/zhuhongshu/article/details/77482985最近项目中得到用户反馈,说每次重启电脑后,软件界面的数据加载都非常慢。这些数据都是软件启动后从Sqlite数据库读取的。我开始以为是代码有什么地方优化的不够好,出现了瓶颈,后来反复实验发现只有冷启动后第一次打开软件会出现这种情况。后来咨询网友,又查了资料,发现...
Asp.Net网站首次打开缓慢问题研究
问题描述: 第一次打开网站首页时特别慢,打开之后无论点哪个页面都很快。长时间无人访问,又会变慢。 原因分析:(环境Win7 64位 IIS7.5) 我们第一次向IIS7请求ASP.NET网页时,IIS会启动w3wp.exe进程,同时在C:\Windows\Microsoft.NET\Framework\v4.0.30319\TemporaryASP.NET Files (也可在IIS
elasticsearch源码分析之Transport(五)
一、基本介绍 1.1概念介绍 transport模块是es通信的基础模块,在elasticsearch中用的很广泛,比如集群node之间的通信、数据的传输、transport client方式的数据发送等等,只要数和通信、数据传输相关的都离不开transport模块的作用。 transport模块分为LocalTransport和NettyTransport两种,在Transpo
用Java实现ElacticSearch的基本操作
适合阅读对象:小白
linux服务器首次连接慢
SSH慢,通过修改SSH的配置解决了。 # vi /etc/ssh/ssh_config UseDNS=no GSSAPIAuthentication no #如果不使用域名: 找到 hosts: files dns 改为 hosts:files   IgnoreRhosts yes # service sshd restart   vspFTP慢 编辑/etc/resolv...
C# WebService首次调用慢
方法一.在程序入口加上以下代码: HttpWebRequest.DefaultWebProxy = null; 方法二.在配置文件中增加以下配置:
elaticsearch-head 插件安装及使用
前言        es是一个在控制台运行的应用,这有些时候让我们的使用变得比较的不方便,而es的社区又是如此的活跃,因此很多插件就如雨后春笋般的冒了出来,而我们今天要讲的elasticsearch就列在其中。下面,我们一起来看看其安装以及简单的使用。安装        事实上如果我们仔细看一下es的根目录下面的bin目录,我们就可以发现有一个plugin.bat,这里就可以作为我们的切入点,ok,
Elasticsearch实践(二)在Springboot微服务中集成搜索服务
关于如何用Docker搭建Elasticsearch集群环境可以参考前一篇:Elasticsearch实践(一)用Docker搭建Elasticsearch集群。本文主要介绍,如果在Springboot体系中集成Elasticsearch服务。本文基于:Elasticsearch版本是2.2.4,Springboot版本是1.5.3.RELEASE,spring-data-elasticsearch
连接SQL Server速度比较慢的原因??
结构:客户程序 / 服务器程序/ SQL Serverrnrn目前的问题是:服务器收到(很多个)客户同时请求后,访问数据库的速度很慢。rnrn请高手给点意见,分不够可再追加。
elasticsearch与集群交互
java api 可以通过两种方式来连接到elasticsearch(简称es)集群,第一种是通过在你的程序中创建一个嵌入es节点(Node),使之成为es集群的一部分,然后通过这个节点来与es集群通信。第二种方式是用TransportClient这个接口和es集群通信。 1. Node方式 参考链接: https://www.elastic.co/guide/en/elasticsearch/
JavaWeb发布项目到线上后,第一次访问加载数据很慢
JavaWeb发布项目到线上后,第一次访问加载数据很慢 使用Tomcat服务器: 1.Tomcat解压项目; 2.Tomcat加载class类到缓存; 3.Java随机数生成依赖熵源(Entropy Source),默认的阻塞型的 /dev/random熵源可能导致阻塞,而换一个非阻塞的 /dev/urandom的熵源就可以了。 第三条补充参考链接: 再谈随机数引起的阻塞问题 JVM上的随机数与熵...
基于transportClient+spring MVC的elasticsearch封装
在网上找了很久没有找到es6.2以上在spring MVC中的整合,暂时自己先写了一个
解决ASP.Net第一次访问慢的处理
IIS8.0https://jingyan.baidu.com/article/c843ea0bb6c13877931e4a2e.htmlIIS7.5处理步骤如下:1.下载ApplicationInitialization。(https://www.iis.net/downloads/microsoft/application-initialization...
Redis慢日志问题解决
现象:       无线词条页访问失败   问题分析: 1、首先,查看日志 日志中非常显眼的是,从Redis读取词条的pv耗时很长,高达20多秒, 看样子是访问Redis速度很慢导致   2、查看Redis的慢日志 &amp;gt; SLOWLOG GET 可以得到如下结果: 25) 1) (integer) 160 #日志的唯一标识符(uid) 2...
链接服务器update比较慢原因
rn--链接服务器和本地服务器关联表更新rnUPDATE 链接服务器.数据库名.dbo.表名rnSET 列名1= **,列名2=**rnwhere 主键列 in (select 列名 from 本地表)rnrn--将本地服务器表的列内容取出后直接更新rnUPDATE 链接服务器.数据库名.dbo.表名rnSET 列名1= **,列名2=**rnwhere 主键列 in (1,2,3,4,5,6)rn--下面语句直接查询也是很快的基本不到一秒rnselect * from 链接服务器.数据库名.dbo.表名rnwhere 主键列 in (select 列名 from 本地表)rnrn第一个查询 基本上半个小时出不来数据rn第二个一秒不到就出来了rnrn请问各位老大是什么原因rn一直有个疑问:难道链接服务器关联其他服务器update表,会不断的验证两个服务器的账号密码、协议等等吗?rn因为update是要依次写入日志的,而select 一次查询出结果rn现在问题是解决了,但一直有这个疑问,贴出来供大家探讨
史上最简单的Elasticsearch教程-第六章:Elasticsearch的restful之搜索查询(DSL)
Eltasticsearch的restful搜索: (提前声明:文章由作者:张耀峰结合自己生产中的使用经验整理,最终形成简单易懂的文章,写作不易,转载请注明) (文章参考:Elasticsearch权威指南,Spark快速大数据分析文档,Elasticsearch官方文档,实际项目中的应用场景) (帮到到您请点点关注,文章持续更新中!) Git主页https://github....