2017-05-03 6 views
0

APIから一行に入ってくるJSONデータ(約50MB)を読み込もうとしているときに、私はAzure webjobの "OutOfMemoryError:Java heap space"エラーに直面しています。Azure Webjob - OutOfMemoryError:Javaヒープスペースエラー

私はデータの小さな部分を一度に読み取ってからデータを処理することによってコードを最適化しようとしていますが、私は紺碧のヒープサイズを増やす方法があるかどうか知りたいですか?

ローカルマシンで同じ問題が発生しましたが、-Xms512m -Xmx1024m引数をEclipse実行構成に追加すると問題は解決しましたが、Webジョブバッチファイルコマンドに同じものが追加されませんでした。

"%JAVA_HOME%"\bin\java -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv6Addresses=false -Xms512m -Xmx1024m -jar jarfilename.jar 

紺碧のヒープサイズをどのように増やすかについてのご意見をお待ちしております。

編集:Premium 1 Mediumアプリサービスプランを使用しています。

私も、それはあなたが使用することができますどのくらいのメモリを決定どのような40%

答えて

0

サーバーを64ビットに変更した後でのみ、最大ヒープに1024 MBを割り当てることができました。私は、Azureの32ビットシステムに512 MB以上の最大ヒープをコミットできないことがわかりました。

1

を超えなかったアプリサービスプランのメモリ使用量をチェックし、あなたのWebアプリケーションの下に実行されることをアプリケーションサービスプランです。今使用しているプラ​​ンは指定していませんが、上位のティアにスケールアップしてみてください。

詳細はhttps://azure.microsoft.com/en-us/pricing/details/app-service/を参照してください。

+0

私はP 1メディアアプリのサービスプランを使用しています。私は3ギガバイトのメモリを持っていると思うし、アプリサービスプランのメモリー使用量をチェックしても40%を超えませんでした。 –

+0

P1は1.75です。簡単にP2に切り替えて、違いがあるかどうかを確認してください。 –

+0

私はp2も試しましたが、64ビットにサーバーを切り替えた後でのみ動作しませんでした。1024MBのヒープサイズを追加して、webjobを正常に実行できました。空白の32ビットシステムに見える512 MBは、 。 –

0

私のapi-app(spring-boot)は、4coreと7GB RAMを持つS3標準ですが、アプリケーションはJavaヒープスペースエラーを投げていました。カスタムヒープサイズを設定するさまざまな方法を試しましたが、運がなかった。だからセットアップアプリケーション設定(プラットフォームは64ビット) - >アプリ設定変数_JAVA_OPTIONS = -Xmx4096m -Xms1512m

私は最初のヒープが増加しているのを見ることができます。 :)

関連する問題