[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

タグ

javaとgcに関するlizyのブックマーク (15)

  • 古典的Javaガベージコレクションを理解する

    参照カウントは、オブジェクト毎のメタデータをプログラム実行に沿って(例えば、参照タイプのフィールドに新たな値を設定する時に)更新することで動作します。メタデータ更新に必要な処理はアプリケーションスレッドで行われるので、独立したアクティビティとして明確に分離することはできません。 実践的なGCアルゴリズムはGC roots — 有効(live)であることが分かっているオブジェクトのセット — から始まり、ポインタを追って有効なオブジェクトをすべて決定することで進行します。 このようなトレーシングコレクタ(tracing collector)では、グラフ理論アルゴリズムを実装することによって、ヒープメモリを有効なものと再利用可能(reclaimable)なものとに分割します。 現代的なGCの文脈においては、コンカレント(concurrent)とパラレル(parallel)が、いずれもコレクショ

    古典的Javaガベージコレクションを理解する
  • ZGC - オラクルの巨大ヒープ向けガベージコレクタ

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    ZGC - オラクルの巨大ヒープ向けガベージコレクタ
  • Javaパフォーマンス最後のフロンティア:ガベージコレクタの削除

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Javaパフォーマンス最後のフロンティア:ガベージコレクタの削除
  • NetBeansのメモリ使用量グラフからわかること - 2011-02-19 - きしだのはてな

    NetBeansでは、メニューの「表示 > ツールバー > メモリー」でメモリ使用状況をツールバーに表示させることができます。 けど、ここでは、もう少し詳しくメモリの使用状況を見るために、JConsoleを使いましょう。JConsoleは、Javaのプログラムの実行状況を見るための管理ツールです。 JConsoleプラグインのインストール JConsoleを使うには、JAVA_HOME/bin/jconsole.exeなどを起動すればいいのですが、せっかくなのでNetBeansからJConsoleを起動できるように、プラグインを入れてみましょう。 メニューの「ツール > プラグイン」を選択してプラグインダイアログを開いて、「使用可能なプラグイン」のタブから「JConsole」を選択してインストールしましょう。 そうすると、JConsole起動ボタンがツールバーに表示されるので、クリックして

    NetBeansのメモリ使用量グラフからわかること - 2011-02-19 - きしだのはてな
  • Hadoopのジョブのパフォーマンスチューニング

    Hadoop 0.21ではCounterでGCに使っている時間が見れるようになりました。 こんな感じです。 この例では5秒程度ですが、ジョブによってはもっとGCに時間を使っている場合があり、 もっと詳細を調べてチューニング出来ないかという話です。 まずはGCのログを取ります。 <name>mapred.child.java.opts</name> <value>-Xloggc:/tmp/hadoop-mikami/@taskid@.gc -Xmx1024m</value> このように-Xloggc で指定した場所にログを取れます。 @taskid@ には attempt_201010311624_0037_m_000000_0 みたいな感じでattempt_id が入ります。 以下が先程のジョブのあるMapタスクでのGCログです 0.164: [GC 3072K->416K(889

  • ここが大変だよ、JavaのGC/メモリ管理

    Webシステムを安定稼働させるには、考慮しなければならないことは数々存在する。システムの適切なサイジングを行うことも、その1つだ。 今回は、その中でもJavaVMのメモリのサイジング(見積もり)とGC(ガベージ・コレクション)に着目して説明する。 現象の見え方 今回は、以下の問題についての話だ。 メモリサイジングをミスした場合、業務ピーク時のGCの多発や長期化からこの現象に陥る場合がある。CPU利用率が100%に張り付いて性能が出ない場合は、GCが原因かを疑う必要がある。その場合、まずはGCログを参照し、GCの処理時間や発生頻度から1分ごとのGC処理の占有率を確認してみるとよい。 占有率が大きい場合、アプリケーションの処理やメモリのサイジングを見直す必要がある。以降では、GCを考慮したメモリのサイジングについて説明する。 JavaVMのメモリ空間はどうなっているのか 初めに、Cosmine

    ここが大変だよ、JavaのGC/メモリ管理
  • ヒープサイズを増やしてもガベージコレクションの停止時間を短いままに: Cliff Click博士とのQ&A

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    ヒープサイズを増やしてもガベージコレクションの停止時間を短いままに: Cliff Click博士とのQ&A
    lizy
    lizy 2010/04/28
    「300GBもの財務データをヒープに入れて、数百ものCPUでそのデータを並列処理」スゴイ世界だな
  • Java SE 6 Update 14のEarly Access公開、G1ガーベージコレクタが利用可能に | エンタープライズ | マイコミジャーナル

    Java SE 6開発チームは11日(米国時間)、Java SE 6の将来のリリースとなるJava SE 6 Update 14のEarly Access版を公開した。主な変更点は以下の2つ。 Windows JREにおけるサービスタグのサポート Java HotSpot 14へのアップデート 特筆すべきは後者で、HotSpot 14では新しいガーベージコレクタ「Garbage-Firstガーベージコレクタ(以下、G1 GC)」が利用可能となる。G1-GCはJava SE 7で正式採用される予定となっているオープンソースのGCだ。 現在のHotSpotでは「世代別GC」と呼ばれる手法が採用されている。これはヒープ領域をYoung領域とOld領域(Tenured領域)に(物理的に)分け、新しいオブジェクトはYoung領域へ、長く使用されているオブジェクトはOld領域に配置し、それぞれ別に管理

    lizy
    lizy 2009/02/22
  • InfoQ: JavaOne: Garbage Firstガーベジコレクタ

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    InfoQ: JavaOne: Garbage Firstガーベジコレクタ
  • Javaのメモリ管理

    日のカクテルは「Javaのメモリ管理」です。 ネタ元はかつのりさんのBlogです。 GCについて勘違いしている人が結構多い JavaというとGC(ガーベッジコレクション)によって不要となったオブジェクトが回収される仕組みになっていますので、一般のプログラマはメモリの確保、解放について考える必要がありません。 ただし、プロフェッショナルなプログラマの方は一般のプログラマの分まで背負い込んで考えてもらう必要があります。 C言語のようにメモリの割り当てと解放を直接管理することはありませんが、まったく別種のメモリ管理が必要となってきます。 参照の種類 「要するに、参照がなくなればGCに回収される、参照があれば回収されない、それだけのことだろう?」 こうおっしゃるお客さんは沢山いらっしゃいます。では、参照にも種類があることをご存じですか? 強い参照 (strong reference) ソフト参照

    lizy
    lizy 2008/05/12
  • java.lang.refパッケージの活用

    わんくまでは珍しいJavaを中心とした日記です 目次 ホーム 連絡をする RSS Login Blog 利用状況 投稿数 - 218 記事 - 0 コメント - 14580 トラックバック - 28 書庫 2008年7月 (1) 2008年2月 (2) 2008年1月 (10) 2007年12月 (9) 2007年11月 (5) 2007年10月 (27) 2007年9月 (25) 2007年8月 (27) 2007年7月 (29) 2007年6月 (15) 2007年5月 (23) 2007年4月 (37) 2007年3月 (8) 日記カテゴリ Java (rss) JavaScript (rss) SQL (rss) WEB (rss) その他 (rss) いろいろリンク The Herringroe Projects(Javaで色々) わんくまトップ 古い方のブログ Javaには参照

    lizy
    lizy 2008/05/12
  • JavaのGC頻度に惑わされた年末年始の苦いメモリ

    JavaのGC頻度に惑わされた年末年始の苦いメモリ:現場から学ぶWebアプリ開発のトラブルハック(9)(1/3 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) Java言語を利用するようになって、システムを開発するうえで楽になった要素は何かというアンケートがあったとき、読者の皆さんならどのように回答するだろうか。私は迷わず、「メモリ管理」と回答する。 同時に、Javaを利用してシステム開発を行う際に、注意していること、悩まされたことは何かとアンケートがあれば、「GC(ガベージ・コレクション)」と回答するだろう。 多くのシステム開発の現場では、いまこの瞬間も、JavaのGCの挙動に悩まされ、GC

    JavaのGC頻度に惑わされた年末年始の苦いメモリ
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • OutOfMemoryエラー発生!? GCがあるのに、なぜ?

    今回の概要 稿ではWebアプリケーションの開発プロジェクトで実際に直面したメモリに関するトラブル事例の中からjava.lang.OutOfMemoryErrorを題材としたTipsを紹介する。 帰宅直前に、突然電話が鳴り響く 業務を終えて帰宅しようとしたとある夜、突然電話が鳴る。相手は社内のプロジェクトのマネージャである。 「現在、テストを実施しているが、数分経つとOutOfMemoryErrorが発生してアプリケーションが落ちてしまう。再起動を掛けると、また順調に動くが、しばらく利用していると、同じようにOutOfMemoryErrorが発生する。メモリ不足のエラーなので、物理メモリを増やそうかと思っているが、物理メモリ増設の前に、アプリケーションという観点からメモリ不足を引き起こす問題がないか調査してほしい」 取りあえず、原因を探るために現場に急行した。 現場にてトラブルの詳細をヒア

    OutOfMemoryエラー発生!? GCがあるのに、なぜ?
  • “Stop the World”を防ぐコンカレントGCとは? (1/2) - @IT

    “Stop the World”を防ぐコンカレントGCとは?:現場から学ぶWebアプリ開発のトラブルハック(2)(1/2 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) Full GC問題の時代が再び到来! それまで順調に動いていたはずのWebアプリケーションが、ある時突然、応答を返さなくなる。そして、運用者があたふたしている間に、何事もなかったかのように再び動き出す。 Javaで構築したシステムにかかわる者ならば誰しもが体験するであろう事象、そうFull GC(ガベージ・コレクション)だ。Full GCが行われている間、すべてのアプリケーションスレッドは停止する。この事象は“Stop the

    “Stop the World”を防ぐコンカレントGCとは? (1/2) - @IT
  • 1