elasticsearch 5.5 Transport Cientを使って初期化されたスロー異常
5314 ワード
elasticsearch 5.5 Transport Cientを使って初期化されたスロー異常
esバージョンの説明 elasticsearch 5.5.5.3バージョン maven依頼カバン elasticsearch java client包 netty依存パッケージ
elasticsearchクラスタにx-packプラグインをインストールして、Transport Clientを直接使ってesクラスタに接続できない場合、XackTransport Clientを使って接続する必要があります.X-pack-transportパッケージを追加して、追加後にclientを初期化する時に以下の異常情報を投げます.
esバージョンの説明
<dependency>
<groupId>org.elasticsearch.clientgroupId>
<artifactId>x-pack-transportartifactId>
<version>5.6.0version>
dependency>
<dependency>
<groupId>io.nettygroupId>
<artifactId>netty-allartifactId>
<version>4.1.13.Finalversion>
dependency>
初期化client異常情報elasticsearchクラスタにx-packプラグインをインストールして、Transport Clientを直接使ってesクラスタに接続できない場合、XackTransport Clientを使って接続する必要があります.X-pack-transportパッケージを追加して、追加後にclientを初期化する時に以下の異常情報を投げます.
Caused by: java.lang.NoSuchMethodError: io.netty.util.internal.ObjectUtil.checkPositive(ILjava/lang/String;)I
at io.netty.util.NettyRuntime$AvailableProcessorsHolder.setAvailableProcessors(NettyRuntime.java:44) ~[netty-common-4.1.13.Final.jar:4.0.33.Final]
at io.netty.util.NettyRuntime.setAvailableProcessors(NettyRuntime.java:87) ~[netty-common-4.1.13.Final.jar:4.0.33.Final]
解決方法は、初期化方法の前に追加するだけです.// netty
System.setProperty("es.set.netty.runtime.available.processors", "false");
nettyの衝突を解決した後にclientを初期化する時また異常を投げて、異常な情報は以下の通りです.Caused by: java.lang.NoSuchMethodError: io.netty.buffer.CompositeByteBuf.addComponents(ZLjava/lang/Iterable;)Lio/netty/buffer/CompositeByteBuf;
at org.elasticsearch.transport.netty4.Netty4Utils.toByteBuf(Netty4Utils.java:117) ~[transport-netty4-client-5.6.0.jar:5.6.0]
at org.elasticsearch.transport.netty4.Netty4Transport.sendMessage(Netty4Transport.java:395) ~[transport-netty4-client-5.6.0.jar:5.6.0]
nettyバージョンの衝突、低いバージョンのnetty起動時に異常を投げます.高いバージョンのnetty依存を追加する必要があります.maven依頼のパッケージを見てください.二つをあなたのpom.xmlに追加してもいいです.問題があればメッセージをください.