Spring BootのHeroku Procfile設定がデフォルト値で上書きされる


0

私はスプリングブートアプリケーションを持っていて、私はherokuでR14メモリ警告を受け続けています。仮想ユーザーによるストレステストでも、ガベージコレクターを一定の間隔で手動でトリガーすると問題が消えるため、ガベージコレクションとヒープサイズの頻度が低いことが問題の原因と考えています。だから私の次のステップは手動でgcを起動する代わりにjvmを最適化することによってよりクリーンな解決策を提供することでした。デフォルトのヒープサイズを300から250 mに減らし、旧世代のしきい値を50%に設定しました。私のローカルマシン上のこの設定では、使用されたヒープは50-70mbでしたが、これは問題ないはずです。それから私はherokuのjvm設定を設定しようとしました。 procfileを提示していないときのデフォルトオプションの表示

web:  java -Dserver.port=$PORT $JAVA_OPTS -jar build/libs/*.jar

私はそのような私の希望のパラメータを追加しました:

web: java -Dserver.port=$PORT $JAVA_OPTS -jar build/libs/*.jar -Xms64m -Xmx250m -XX:CMSInitiatingOccupancyFraction=50 -XX:+PrintGCDetails -Xlog:gc

ただし、これは機能しません。

起動時に私はこのメッセージが出ます:

Starting process with command `java -Dserver.port=22382 $JAVA_OPTS -jar build/libs/*.jar -Xms64m -Xmx250m -XX:CMSInitiatingOccupancyFraction=50 -XX:+PrintGCDetails -Xlog:gc`

Setting JAVA_TOOL_OPTIONS defaults based on dyno size. Custom settings will override them.

Picked up JAVA_TOOL_OPTIONS: -Xmx300m -Xss512k -Dfile.encoding=UTF-8 

ガベージコレクタメッセージも表示されず、R14エラーが返されました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.