問題タブ [permgen]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - .NETにはJavaのpermgenのようなものがありますか?
だから私はかなり標準的な春、休止状態、Tomcat環境を持っています..それでも私はローカルとCIでpermgensを取得しています。
一時的な修正(つまり、permgenに割り当てられたメモリの増加)があることは知っていますが、これはまだ一時的なものです。私が見ているものを考えると、本番環境がどのように見えるかは想像したくありません。
(ちょっとした比較の質問).NETでは、似たようなものは見たことがありません。.NETにはそのバージョンのpermgenがありますか?
(どのpermgenがPermGenスペースの重要性であるかわからない場合)
maven - 子JVMは、フォークされたときに最大ヒープサイズとperm genサイズを「継承」しますか?
エクスポートされたシェル変数で指定された最大ヒープサイズとpermgenサイズを指定した場合、つまりJAVA_OPTS
、またはMAVEN_OPTS
MavenビルドがJVMをフォークした場合、子JVMは、親JVMと同じ構成を「継承」するか、アクセスを試みます。シェルからビルドしますか?
jsp - java.lang.OutOfMemoryError: PermGen スペース (通常の容疑者ではありません!)
JSP ページのこの行でエラーが発生します。
eclipse の呼び出しと Tomcat のインスタンスの両方について、他の投稿にあるメソッドを使用して、perm gen max を 512m に増やしてみました。
わかりましたので、もう少しコンテキストが必要です。これは私の開発システムであり、Eclipse で実行され、Eclipse 内のサーバーである tomcat のスタンドアロン インスタンスを指しています。
Recurring "PermGen" in Tomcat 6によると、eclipse.ini には次のように記述されています。
tomcat - JVMフラグにもかかわらず、Tomcatの本番モードでの再デプロイ時にGrails permgenがリークするのを防ぐ方法はありますか?
おなじみの古い問題ですが、一度だけ解決したいと思います。次の JVM フラグを設定しました。
しかし、permgen の使用量は、デプロイメント サイクルごとに 50MB 程度増加しています。Tomcat マネージャー アプリケーションを使用してリモートでデプロイしており、Grails は運用モードになっています。
いっぱいになるkill -9
と、必要です!
JRockit を使ってみようと思うかもしれませんが、今は選択肢ではありません。コンテナ全体を時々バウンスしなければならないことは、実稼働環境では受け入れられません。
java - 十分な連続メモリが見つからないために OOM が発生する可能性はありますか?
-Xmx1024m でいくつかの Java コードを開始すると、ある時点で OOM が原因で hprof が発生します。hprof には 320MB しか表示されず、スタック トレースが表示されます。
これは、私がコピーしている大きな文字列から来ています。
私はどこかで読んだことを覚えています(どこで見つけられませんでした)何が起こったのか、これらのケースは次のとおりです。
- プロセスはまだ 1 GB のメモリを消費していません。
- ヒープがまだ 1 GB 未満であっても、ある程度のメモリが必要であり、
copyOfRange()
連続メモリでなければならないため、まだ制限を超えていなくても、ホスト上で十分な大きさのメモリを見つけることができず、失敗します。 OOM。
これに関するドキュメントを探してみましたが(copyOfRange()
連続メモリのブロックが必要です)、何も見つかりませんでした。
もう 1 つの考えられる原因は、十分な permgen メモリがないことです。
誰かが連続記憶仮説を確認または反論できますか? 一部のドキュメントへのポインタも役立ちます。
java - -XX:MaxPermSize(-XX:PermSizeありまたはなし)
Java.lang.OutOfMemoryError:PermGenスペースエラーが発生し、指定したパラメータ-Xms
とパラメータ以外のTomcatJVMパラメータを確認しました。少しプロファイリングした後、PermGenスペースでガベージコレクションが発生し、フルに実行されないようにすることがあります。-Xmx
-XX:MaxPermSize=128m
私の質問は次のとおりです。-XX:MaxPermSize
私も指定した場合の違いは何-XX:PermSize
ですか?合計メモリがXmx+maxPermSizeになることはわかっていますが、が指定されているときにそこにある-XX:PermSize
べきではない理由は他に-XX:MaxPermSize
ありますか?
これらのJVMパラメータを実際に扱った経験がある場合は、共有してください。
ps。JVMはHotSpot64ビットサーバーVMビルド16.2-b04です
jvm - 永続的な生成はヒープの一部ですか、それともjvm内のそれ自体の別のスペースにありますか
この質問に関して複数のコメントを見てきました。「はい」と言う人もいれば「いいえ」と言う人もいますが、答えの多くはあいまいです。誰かがそれが存在する場所をより簡単な言葉で説明できますか?ある投稿では、クラスローダーによってクラスがロードされるクラスメモリと同じメモリの場所を共有していると誰かが言っているのを見たことがあります-それは本当ですか?
maven - IntelliJ 用の JRebel および Maven プラグインのセットアップ - java.lang.OutOfMemoryError: PermGen space
誰でも助けることができますか?IDEA で Maven および JRebel プラグインを使用して Appfuse archetype プロジェクトを使用しています。以下は、Idea の Maven プロジェクトから jetty:run を実行したときに得られるものです。/etc/launchd.conf (MAC) の MAVEN_OPTS を増やし、VM オプションとして IDEA の maven プラグイン Runner に -XX:MaxPermSize=128m を追加しました。それを修正するために他に何ができますか?ありがとう。
2011-12-16 17:49:16.877:INFO:/:Spring FrameworkServlet 'dispatcher' JRebel-Spring の初期化: '/Users/vraskin/projects/appfuse_projects/test_project/tutorial/tutorial-spring/src/ の Spring Bean 定義の監視main/webapp/WEB-INF/dispatcher-servlet.xml'. エラー [メイン] Digester.startElement(1366) | 開始イベントがエラー java.lang.OutOfMemoryError: PermGen space をスローしました
...
2011-12-16 17:49:25.310:WARN::失敗したディスパッチャー: java.lang.OutOfMemoryError: PermGen スペース 2011-12-16 17:49:25.310:WARN::失敗した org.mortbay.jetty.plugin.Jetty6PluginWebAppContext@ 4dd3c6fd{/,/Users/vraskin/projects/appfuse_projects/test_project/tutorial/tutorial-spring/src/main/webapp}: java.lang.OutOfMemoryError: PermGen スペース 2011-12-16 17:49:25.310:WARN::失敗した ContextHandlerCollection@2442c1ad: java.lang.OutOfMemoryError: PermGen スペース 2011-12-16 17:49:25.310:WARN::failed HandlerCollection@1ab95774: java.lang.OutOfMemoryError: PermGen スペース 2011-12-16 17:49:25.310 :WARN::エラー開始ハンドラー java.lang.OutOfMemoryError: PermGen スペース 2011-12-16 17:49:26.152:WARN::failed org.mortbay.jetty.nio.SelectChannelConnector$1@12d37bd8: java.lang.OutOfMemoryError: PermGenスペース 2011-12-16 17:49:26.152:WARN::失敗した SelectChannelConnector@0.0.0.0:8080:java.lang.OutOfMemoryError: PermGen スペース 2011-12-16 17:49:26.152:WARN::failed Server@3dd510be: java.lang.OutOfMemoryError: PermGen スペース [情報] Jetty サーバーが終了しています。
...
スレッド「メイン」の例外 java.lang.OutOfMemoryError: PermGen スペース
grails - CloudFoundryプラグインを使用したGrailsアプリのデプロイ
GrailsCloudFoundryプラグインを使用してGrailsアプリをデプロイしています。アプリが起動されるとすぐに、PermGenメモリが不足します。使用可能なPermGenメモリの量を増やす方法はありますか?
CloudFoundryフォーラムでこのスレッドを見たことがありますが、受け入れられた回答に記載されているvmcツールではなく、CloudFoundry Grailsプラグインを使用してデプロイしているため、あまり役に立ちません。
jvm - Jboss 6 に Web アプリケーションをデプロイしながら成長する Permgen
以前は Jboss 4.2.3 にあった Web アプリケーションを Jboss 6 に移植しています。合計で約 12 の Web アプリケーションがあり、そのうち 4 つだけが現在デプロイされています。
これらの Web アプリケーションは、Axis2 1.5.5、spring 2.5、hibernate 3.2.5、OpenJPA 1.0、saxon 9.1 に基づいています。
クラスローダー分離は次のように設定されています
PermGen はすでに 440MB に達しており、Jboss 6 で成長していることがわかります。-XX:MaxPermSize=512m
ここで問題を特定する際に、誰でも私に情報を提供できますか。
環境: JDK 1.6.0_26、Ubuntu 11.10