タグ

jvmに関するhiro360のブックマーク (18)

  • トラブルに備えるJVMオプション - n-agetsumaの日記

    以前の記事でトラブルが起きた後の初動対応を書いてみたが、いざトラブルに遭遇すると、まず再起動してからどうするか考えるケースが多いと感じている。しかし何も情報がないと『情報がない/再現方法が不明』などの理由からそのままお蔵入りになってしまう。今回はトラブルに事前に備えるために、地味だけど大切なJavaVMのオプションをまとめてみる。 GCログの出力とローテーション OutOfMemoryError発生時のヒープダンプ自動出力と出力パス設定 JavaVMクラッシュログの出力パス設定 JVMオプションの設定 (OpenJDK/OracleJDK) JavaVMにはGCおよびヒープメモリの状態をロギングする仕組みや、OufOfMemoryError時にヒープダンプを自動的に出力するような障害に備えて自動的に情報を出力する機能がある。おすすめのオプション*1は以下の通り。 java -Xms?g -

    トラブルに備えるJVMオプション - n-agetsumaの日記
  • 「JVM Operation Casual Talks」発表資料のリンクをまとめてみる #jvmcasual - 元RX-7乗りの適当な日々

    4/7に、LINEさんのオフィスで開催された「JVM Operation Casual Talks」。 一部で、Cassandra Casualだったのではないかという疑惑もありましたが、なかなかためになる話が多くて、あとできっと資料を見たくなる日が来そうなので、ちょっとまとめておこうと思う。 こちらもあわせて読みたい JVM Operation Casual Talks #jvmcasual - Togetter Understanding Memory Management of JavaVM
 in 15 minutes (@stanakaさん) https://speakerdeck.com/stanaka/understanding-memory-management-of-javavm-in-15-minutes @stanakaさん、どこでJVM使ってるのかと思ったら、今日は

    「JVM Operation Casual Talks」発表資料のリンクをまとめてみる #jvmcasual - 元RX-7乗りの適当な日々
  • JMXのメトリクスをfluentd経由で蓄積する | nagaseyasuhito Daily works.

    みなさんJMXは使っていますか?Javaアプリケーションのメモリ使用量を始めとした統計情報を取得したりできる、運用には欠かせないモニタリング・管理の仕組みですが、統計情報を蓄積する方法に悩んでいる方も多いのではないでしょうか。 今回はアプリケーションから取得できる様々な統計情報をfluentd経由で蓄積し、分析やトラブルシュートに活用する方法を紹介します。 JMX用のfluentdプラグイン JMXの統計情報をfluentdで収集するfluent-plugin-jolokiaというプラグインを使います。 fluent-plugin-jmxではなくfluent-plugin-jolokia?と思われるかもしれません。 JolokiaはJMXをJSONベースのREST APIとして提供するためのエージェントです。fluentdのプラグインはRubyで書かれていますが、Rubyから直接JMXのプ

  • JavaVMのメモリ管理をマスターする

    Webシステムの安定動作には、メモリ使用量の適切な見積もりが不可欠。だがJavaVMでメモリがどのように管理されるかを理解しているだろうか? メモリに関する問題が発生すると、知識や技術資料の不足によって問題が長期化しがち。JavaVMでどのようにメモリが管理されているかを理解し、正確なメモリサイジングやメモリ関係のトラブルの早期解決へとつなげよう。 JavaVMのメモリ構造を理解しよう まず、JavaVMがどのようにメモリを使っているかを理解しておこう。JavaVMがプログラムを実行すると、Javaのプロセスによってメモリが使用される。Javaのプロセスでは、Javaヒープ、Permヒープ、Cヒープ、およびスレッドスタックという4つのメモリ領域を使用する。 Javaヒープはアプリケーションプログラムの各種オブジェクトを格納する領域であり、Classのnewで確保される。JavaヒープはNe

    JavaVMのメモリ管理をマスターする
  • A Collection of JVM Options

  • Java Communication APIを使ったプログラムを、VMWareでテストしてみた - IT-Walker on hatena

    Javaからシリアルポートを触るためのAPIJava Communication APIに少し触りました。 API自体は簡単なのですが、実装されているライブラリにはいろいろ問題が。 使う人がそれほど多いとは思えませんが、同様の問題にぶつかる人がいるかもしれないので、ログしておきます。 あと、シリアル通信のテストをVMWareを利用してやってみました。外部機器一切無しにシリアル通信のテストが出来るので、こりゃ便利。 基礎知識 Java Communication APIは、JavaからOSのシリアルポートにアクセスするためのAPIです。古い(1997年)APIなのでJSRなどは存在せず、実装コードのみが存在します。パッケージはjavax.commです。 現在のバージョンは3.0で、実装コードはSolaris版とWindows版が存在します。つまり、Windows版はない、と。 で、上のリン

  • VisualVM - wyukawa's diary

    今日の晩飯(メインは鮭の味噌バター炒め)と中学、高校の時に割とよく聞いてた音楽(BOØWY、サザン、RCサクセション)についてブログに書いていたら、Safariが突然落ちて書いていた内容が消えてしまった。orz そのネタは今度気が向いたら(思い出したら)書くことにして、VisualVM関連をメモっとく。 [Seasar-user:15022] [S2JDBC] SQL自動生成のメモリ消費 [CONTAINER-199] S2JDBC で,Statement#getGeneratedKeys() をサポートした RDBMS で @GeneratedValue が指定されたエンティティを JdbcManager#insert(T) に渡した場合,PreparedStatement がクローズされない問題を修正しました.[Seasar-user:15022] - The Seasar Found

    VisualVM - wyukawa's diary
  • VisualVMでSAStrutsのプロファイリングなど試してみる その2 - 谷本 心 in せろ部屋

    さて、昨日の続きです。 実は[Profiler]タブを開いた時に、Warningが出ています。 VisualVMは、問題がある時に、結構こうしたエラーメッセージが出て 何をすべきかを教えてくれます。 エラーメッセージに記載されたリンク先の解説を読めば 起動引数に「-Xshare:off」を入れろと書いてあります。 早速、Tomcatのbin/catalina.batでJAVA_OPTSを編集してる箇所に この起動引数を追加しましょう。 set JAVA_OPTS=%JAVA_OPTS% -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties" ↓ set JAVA_OPT

    VisualVMでSAStrutsのプロファイリングなど試してみる その2 - 谷本 心 in せろ部屋
  • VisualVMでSAStrutsのプロファイリングなど試してみる その1 - 谷本 心 in せろ部屋

    VisualVMを使って、 ローカルPC上のTomcatで動くWebアプリケーションの プロファイリングを行なってみましょう。 前準備 http://tomcat.apache.org/ よりTomcat6をダウンロードして解凍する。 http://sastruts.seasar.org/ より SAStrutsチュートリアルをダウンロードして解凍する。 SAStrutsのwebappのフォルダ名をsastrutsに変更して、Tomcatのwebapps直下にコピー。 Tomcatのbin/startup.batなどを叩いてTomcat6を起動する。 http://localhost:8080/sastruts/ にアクセスする。 これでWebアプリケーションが動き始めます。 今回はSAStrutsを使いましたが、別に何でも構いません。 VisualVMの起動 https://visual

    VisualVMでSAStrutsのプロファイリングなど試してみる その1 - 谷本 心 in せろ部屋
  • JavaのGC頻度に惑わされた年末年始の苦いメモリ

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

    Javaの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
    hiro360
    hiro360 2007/11/07
  • http://blogs.sun.com/thaniwa/entry/ja_java_serverclassmachine

  • IBMのWASはJVMやGCをどのように扱っているのか?

    IBMのWASはJVMやGCをどのように扱っているのか?:WebSphereサーバ・チューニング入門(3)(1/4 ページ) 連載は、Javaアプリケーション・サーバの1つである、IBM WebSphere Application Server(以下、WAS)についてのパフォーマンス・チューニングに関する入門記事です。チューニングといっても、実施するエンジニアによって、その方法は異なりますが、連載はWASを前提とし、かつ80%のケースをカバーすることを目標とします(編集部注:WASのインストールから学びたい読者は、「バージョン別セットアップマニュアル一覧」のWebSphere Application Serverを参照してください) 前回は、WASパフォーマンス・チューニングの主要項目について簡単な説明をし、パフォーマンス・チューニングの主要項目の1つである「トランスポート・チャネル・

    IBMのWASはJVMやGCをどのように扱っているのか?
  • OZACC.blog: Terracotta

    Java | Terracotta 【ハウツー】JVMレベルでクラスタリングを可能に - OpenTerracotta (1) JVMレベルのクラスタリングって何? | エンタープライズ | マイコミジャーナル Red5のMLを読んでいると、Terracotta、Terracotta…とよく出てくるので、なんで植木鉢が関係するんだろう?、そういう言い回しが英語にあるのかなと思っていたら、TerracottaというJavaのプロダクトがあった。 検索してもこの記事以外に日語の情報がほとんどないけど、このプロダクトすごいんじゃないか? 用途がちょいと違う気がするけどMemcached使うよりも良さそうな雰囲気。今後要調査。

  • 【ハウツー】JVMレベルでクラスタリングを可能に - OpenTerracotta (1) JVMレベルのクラスタリングって何? | エンタープライズ | マイコミジャーナル

    Open Terracottaは、複数のJVMをまたいでJavaオブジェクトをキャッシュすることができるクラスタリングソリューションだ。以前は商用製品であったものが、2006年末にオープンソース化された。ライセンスは、Mozilla Public LicenseをベースとしたTerracotta Public Licenseであり、商用プロダクトにも問題なく利用できる。 なぜTerracottaが必要か アプリケーションにとって「パフォーマンス」は重要だ。特にデータベースを使用するアプリケーションはデータベースへのネットワークアクセス、検索クエリの実行性能などに足を引っ張られてパフォーマンスが思うように出ないことも多い。 そこで考え付くのが検索結果をキャッシュして再利用することであるが、これには別の問題がある。一つは、キャッシュを利用すると将来的な拡張性を損ねる可能性があることである。例え

  • 【ハウツー】JVMレベルでクラスタリングを可能に - OpenTerracotta (1) JVMレベルのクラスタリングって何? | エンタープライズ | マイコミジャーナル

    Open Terracottaは、複数のJVMをまたいでJavaオブジェクトをキャッシュすることができるクラスタリングソリューションだ。以前は商用製品であったものが、2006年末にオープンソース化された。ライセンスは、Mozilla Public LicenseをベースとしたTerracotta Public Licenseであり、商用プロダクトにも問題なく利用できる。 なぜTerracottaが必要か アプリケーションにとって「パフォーマンス」は重要だ。特にデータベースを使用するアプリケーションはデータベースへのネットワークアクセス、検索クエリの実行性能などに足を引っ張られてパフォーマンスが思うように出ないことも多い。 そこで考え付くのが検索結果をキャッシュして再利用することであるが、これには別の問題がある。一つは、キャッシュを利用すると将来的な拡張性を損ねる可能性があることである。例え

  • 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
  • もはやOSは不要、BEAが仮想化環境に最適化したJVMとWebLogic Serverを発表

    もはやOSは不要、BEAが仮想化環境に最適化したJVMとWebLogic Serverを発表:BEA World 2006 Beijing Report(1/2 ページ) BEA Systemsは、北京で開催されているBEA Worldで「BEA WebLogic Server Virtual Edition」を発表し、さまざまなベンダーがしのぎを削るホットな仮想化市場に参入することを明らかにした。 サンフランシスコ、プラハと開催してきた今年のBEA Worldを締めくくる「BEA World 2006 Beijing」で思いがけないビッグニュースが飛び出した。 BEA Systemsは12月14日、北京で開催されているBEA Worldカンファレンスで「BEA WebLogic Server Virtual Edition」を発表し、さまざまなベンダーがしのぎを削るホットな仮想化市場に参

    もはやOSは不要、BEAが仮想化環境に最適化したJVMとWebLogic Serverを発表
  • 1