2016-10-13 6 views
1

WSO2 API Manager 1.10.0の設定に問題があります。 3つのゲートウェイワーカーノードと1つのマネージャノードを持つクラスタ設定を使用しています。別の店舗、出版社&キーマネージャノード(最近v1.8.0から1.10.0に更新されました)WSO2 APIマネージャ1.10でヘイルキャストのヒープダンプの問題を分析および修正する方法

アップグレード後、すべてのワーカーノード(時には他のノード)がヒープダンプとクラッシュ(ほぼ同時に)します。

分析ヒープダンプを明らかにする:

28,509 instances of "com.hazelcast.nio.tcp.WriteHandler", loaded by "hazelcast" occupy 945,814,400 (44.42%) bytes 

28,509 instances of "com.hazelcast.nio.tcp.ReadHandler", loaded by "hazelcast" occupy 940,796,960 (44.18%) bytes 

スレッドに:私たちは、救済のために検索することができていませんでした

com.hazelcast.nio.tcp.iobalancer.IOBalancerThread @ 0x7877eb628 hz.wso2.pubstore.domain.instance.IOBalancerThread Thread 

。ログは、OOM例外を取得するノード以外は何も教えてくれません。これは、トラフィックが非常に少ないノード、およびトラフィックが非常に多いノード(異なる環境は同じ動作をします)で発生します。

誰でも同じような現象が起こりますか?今後のアイデアは?

+0

基礎となるHazelcastのバージョンは何ですか? – noctarius

+0

Hazelcastバージョン3.5.2 –

+1

最近修正されたメモリリークがあります(https://github.com/hazelcast/hazelcast/pull/7648)。 Hazelcastのバージョンを3.6.2以上に更新する必要があります。私はこれが役立つことを願っています – noctarius

答えて

3

これは実際にHazelcastでメモリリークの問題となりました。それ以降のバージョンにアップグレードした後、この問題は停止しました。

Hazelcastをアップグレードするには、少しトリッキーが必要です。

1)ここではあなたの特定のHazelcastバージョンのWSO2 GitHubのレポ(または単にポンポン-ファイル)をダウンロードします。https://github.com/wso2/orbit/tree/master/hazelcast

2)()お好みのバージョンにPOMのこのセクションでHazelcastバージョンを変更します。

<properties> 
    <version.hazelcast>3.7.2</version.hazelcast> 
</properties> 

3)パッケージを作成します。

4)ビルドしたパッケージをサーバーにパッチとして展開します。

これは、製品と一緒に出荷されているものと同じ名前のコンポーネントにのみパッチを当てることができるため、「回避策」です。

+0

共有いただきありがとうございます。ただし、「ビルドされたパッケージをパッチとしてデプロイする」方法の詳細を提供できますか? – user1802604

+2

/repository/components/patchesに、新しいパッチディレクトリを作成します(たとえば、patch0100のように増分番号を付けてjarファイルをそこにドロップします)。サーバーを再起動すると、patch-folderに置いたファイルにパッチが当てられます。また、参照してください:https://docs.wso2.com/display/AM1100/WSO2+Patch+Application+Process –

+0

それは動作します。どうもありがとう! – user1802604

関連する問題