ブックマーク / nekop.hatenablog.com (5)

  • GCログを上書きしないためのTips - nekop's blog

    オプションで指定するファイル名に日時を入れましょう。この方法は標準出力のリダイレクトなんかにも応用できる。 -Xloggc:/path/to/gc.log.`date +%Y%m%d%H%M%S`意外に知られていないというかちゃんと保存しないで上書きしてて残念なことになっているケースが多いので。起動時にバックアップするようなスクリプト仕込むとかでもいいんだけどこっちのほうが簡単。

    GCログを上書きしないためのTips - nekop's blog
    komorih
    komorih 2011/10/17
    ログファイル名に日時を含める方法 (*nix プラットフォーム限定)
  • コミュニティ版JBoss ASとエンタープライズ版JBoss EAPの違い - nekop's blog

    何が違うのー?って良く聞かれるので少しだけ書いておきます。宣伝っぽくなるのは意図するところではないのでなるべく簡潔に。 簡単に言ってしまえばエンタープライズ版のリリースバイナリはコミュニティ版にさらなるテストを行って修正を積み重ね、より高パフォーマンス&安定化させたものです。 まず目的ですが、コミュニティ版のJBoss ASは、機能開発がメインです。機能開発の途中に取り込まれたバグ修正などはリリースバージョンに含まれていきますが、バグ修正のみを目的としたメンテナンスアップデートや、セキュリティアップデートのようなリリースは基的には行われていません。つまり、メジャーバージョンアップリリースのみであり、メンテナンスリリースが行われるかどうかは不定です。よって、コミュニティ版を利用し、かつバグ修正が必要な場合は、自分で修正のバックポートやビルドをすることが前提となります。 エンタープライズ版は

    コミュニティ版JBoss ASとエンタープライズ版JBoss EAPの違い - nekop's blog
    komorih
    komorih 2011/05/18
    #JBoss のサポートしてたころに知りたかった…
  • JBoss ASのマイナーバージョンアップを簡単に行う - nekop's blog

    あけおめ。 新年一発目はJBoss ASの環境構築と、バージョンアップのTipsについて書きます。コミュニティ版のJBoss ASは機能開発を主な目的としているのでマイナーバージョンアップリリースはあまりされないのですが、JBoss EAP (Enterprise Application Platform) というエンタープライズ版のほうは3-6ヶ月くらいの周期でパッチバージョンが提供されていきます。例えば、JBoss EAP 4.3.0.GA_CP09というようなバージョンがリリースされています。これはコミュニティ版のJBoss AS 4.2系から1200件ほどの問題を修正したバージョンです。修正にはセキュリティ修正や、重要なバグフィックス、パフォーマンス改善、細かいバグフィックスなどが含まれます。 JBoss ASは設定ファイル数が少し多めなので、全部マニュアルでファイルコピーや設定フ

    JBoss ASのマイナーバージョンアップを簡単に行う - nekop's blog
    komorih
    komorih 2011/01/07
    マイナーバージョンアップも意外と手間がかかる JBoss AS …っていうか,意外とアップグレードインストーラ (ツール) が用意されていないプロダクトって沢山あり,損してるなー,と思う
  • JBoss上でJDBCログ(DBアクセスログ)を取る - nekop's blog

    JBoss自体にはJDBCログを出力する機能がないので、外部ライブラリを導入する。log4jdbcというライブラリが簡単。動作はlog4jdbc 1.2 beta 2というバージョンで確認した。 jarをlog4jdbcのサイトからダウンロードして$JBOSS_HOME/common/lib/ディレクトリに置く。依存ライブラリとしてslf4jが必要だがJBossに最初から含まれているので無視して大丈夫だ問題ない。$JBOSS_HOME/server/$PROFILE/deploy/hsqldb-ds.xmlを開いて以下のようにとをちょこっと修正して完了。あとはconf/jboss-log4j.xmlでDEBUGログの出力が有効であればログがもりもり出るようになる。必要があればいくつか出力レベルを絞ったりしておしまい。 <connection-url>jdbc:log4jdbc:hsqldb

    JBoss上でJDBCログ(DBアクセスログ)を取る - nekop's blog
    komorih
    komorih 2010/11/05
    JBoss での JDBC ログ取得には外部ライブラリが必要
  • OutOfMemoryErrorが発生したときにきちんとJavaプロセスを殺す - nekop's blog

    OutOfMemoryErrorが発生してもスレッドを異空間に葬るだけでJava VMはそのまま動き続ける場合があるけど、当然ながら状態に一貫性のない状態で動いている可能性があるわけで基的にはとっとと死んで欲しいわけである。一般的に言うところの「不定」状態。OOMEはErrorであってふつうの例外ではなく、致命的なJava VMエラーを示すものである。OOME発生後にプロセス再起動しないでそのままどうこうしようというのは絶対に避けた方が良い。 例えばJDBCのコネクションオープンしてDBからデータを読み込んでるときにOOMEが起きた場合、JDBCコネクションは大抵オープンしっぱなしで回収はされなかったりする。OOMEではfinallyブロックが呼ばれる保証はない。JDBCコネクションリークくらいならまだ良い方だが、これは全てに当てはまる。A-B-Cといったセットになっている処理は例外など

    OutOfMemoryErrorが発生したときにきちんとJavaプロセスを殺す - nekop's blog
    komorih
    komorih 2010/07/15
    Sun #Java HotSpot VM の -XX:OnOutOfMemoryError オプションの正しい使い方の例
  • 1