タグ

2016年9月7日のブックマーク (13件)

  • Javaのスレッドダンプ、ヒープダンプの取り方 - Qiita

    JavaでFullGCが頻発したり、メモリリークしてたり、busyなスレッドに埋め尽くされそうになったとき、調査に必要なダンプを取得してから再起動することはよくあるでしょう。それらの取り方。 Javaのスレッドダンプを取得する - Qiita [キータ] 前にスレッドダンプだけ書いたけど、ヒープダンプもあったほうが良いのでまとめ JavaのプロセスID取得 $ $JAVA_HOME/bin/jps -v 12345 Application -XX:OnOutOfMemoryError=/us… 67890 Bootstrap -Djava.util.logging.config.file=/us…

    Javaのスレッドダンプ、ヒープダンプの取り方 - Qiita
    stealthinu
    stealthinu 2016/09/07
    Javaでヒープダンプ取得方法。しかしヒープダンプはすごく時間が掛かるし重い。ヒープダンプ中でサービス止まるのは困る。どうしたものか。
  • 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
    stealthinu
    stealthinu 2016/09/07
    javaでOutOfMemoryError起きたら死すべし!という設定
  • Java開発の性能改善! その2 GCログの解析とHeapの設定 - Qiita

    第2回です。 なかなか更新できる時間がないですが マイペースで書いていこうと思います。 ストックやフォローをして頂けると励みになります。 さて前回はGCの仕組みの概要説明とjstatでのモニタリングでした。 今回はCGログの分析をしてみようと思います。 JVMのGCログ設定 まずはGCログが取得できるように設定しないと始まりませんね。 以下のようなオプションをjavaの起動コマンドに付与すると GCの情報を取れるようになります。 -verbose:gc [GC 919089K->41941K(943744K), 0.2300771 secs] こんな感じのGCログが出ます。 -XX:+PrintGCDetails -XX:+PrintGCDateStamps [GC2015-12-10T07:06:41.209+0900: 308.418: [ParNew: 903392K->50610K

    Java開発の性能改善! その2 GCログの解析とHeapの設定 - Qiita
    stealthinu
    stealthinu 2016/09/07
    Javaでメモリリークやヒープ不足が起きた時の調査対応方法
  • Web Application Server を動かす時の Java8 起動オプションのメモ - その手の平は尻もつかめるさ

    一般的な Web Application Server *1 を Java8 で動かすにあたって,最近有効にしている起動オプションについてメモ. 何か間違っていたり,あるいは「こっちの方が良い」みたいなのがあれば教えて下さい. -server server mode で起動させる (指定しないと client mode になる可能性がある,マシンスペックによってスイッチする?). -Djava.net.preferIPv4Stack=true If IPv6 is available on the operating system the underlying native socket will be an IPv6 socket. This allows Java(tm) applications to connect too, and accept connections from,

    Web Application Server を動かす時の Java8 起動オプションのメモ - その手の平は尻もつかめるさ
    stealthinu
    stealthinu 2016/09/07
    Javaでメモリリークやヒープ不足が起きた時の調査対応方法
  • JavaVMのGCログ出力とGCViewerについて - TASK NOTES

    JavaでOutOfMemoryErrorが発生したけど原因がわからないなどトラブル時に確認することがあるGCログについてまとめました。 Java実行時のGCログオプション GCログの出力方法で簡単なのはJava実行時に-verbose:gcオプションを指定することです。ログは標準出力に出力されます。 基的には以下のオプションを指定するのがいいと思います。-verbose:gcと-Xloggc:<filename>を一緒に指定するとオーバーライドされるので-verbose:gcを指定する必要はありません。 オプション 内容 -Xloggc:<filename> GCイベント情報のロギング -XX:+PrintGCDetails 全てのGCで詳細メッセージの出力有効化 -XX:+PrintGCDateStamps 全てのGCで日付スタンプの出力を有効 -XX:+UseGCLogFileRo

    JavaVMのGCログ出力とGCViewerについて - TASK NOTES
    stealthinu
    stealthinu 2016/09/07
    Javaでメモリリークやヒープ不足が起きた時の調査対応方法
  • Java 8時代の開発者のためのデバッグ/トラブル解決の基本・応用テクニック~JJUG CCC 2014 Springまとめリポート(後編)

    Java 8時代の開発者のためのデバッグ/トラブル解決の基・応用テクニック~JJUG CCC 2014 Springまとめリポート(後編)(1/3 ページ) Java開発における3大トラブルと対策、IDEのデバッガー活用の必要性、Java 8より導入された新しいメモリ領域を使いこなすためのテクニック、独自のトランザクショナルメモリ機構を実装した有効性などをお伝えする。 日Javaユーザーグループは2014年5月18日、「JJUG Cross Community Conference 2014 Spring」を開催した。「JJUG Cross Community Conference」(以下、JJUG CCC)は毎年春と秋に開催されるカンファレンス。初心者向けからエキスパート向けまで、Java/JVMに少しでも関連すればいいという広いテーマでさまざまな講演が行われている。 前編では、「S

    Java 8時代の開発者のためのデバッグ/トラブル解決の基本・応用テクニック~JJUG CCC 2014 Springまとめリポート(後編)
    stealthinu
    stealthinu 2016/09/07
    Javaでメモリリークやヒープ不足が起きた時の調査対応方法
  • 恐怖の JVM 大量メモリ消費!メモリリークの謎を追え!! - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、ミドルウェア開発チームの青木(@a_o_k_i_n_g)です。将来の夢は川口浩探検隊に入ることです。 先日、弊社のアプリケーションサーバーで大量にメモリを消費するという現象に遭遇しました。アクセス頻度の低いサーバーがメモリを大量消費するという謎深いものでした。 発生当初の状況はこんな感じです。 アプリケーションサーバーでは Jetty が稼働 現象が発生した JVM は 5GB 程度のメモリを消費しており、明らかに通常ではない量のメモリを消費している 複数台のサーバーで発生していたが、全てで発生したわけではない。 また、発生したサーバーはいずれもアクセス頻度が少ないサーバーだった。 ヒープ、パーマネント、スタック ひとまず、JVM でトラブルが発生した時は何はともあれヒープダンプとスレッドダンプを見るに限ります。各種情報の取得をインフラ部隊へ依頼し、得られたヒープを解析すると、

    恐怖の JVM 大量メモリ消費!メモリリークの謎を追え!! - Cybozu Inside Out | サイボウズエンジニアのブログ
    stealthinu
    stealthinu 2016/09/07
    もしこんなのが自分の抱えてるメモリリークの理由だったら絶対にわからんわ…
  • Twitter: 身売りを含む今後の経営方針を決める取締役会を開催へ - BusinessNewsline

    stealthinu
    stealthinu 2016/09/07
    えええ。日本だとそんなに低下してる感じしないのにな。Instagramってそんなにみんな使ってるの?若者クラスタじゃないからわからんだけ?
  • オンライン広告における不正クリック検出手法と歴史

    2016-09-03 データマイニング+WEB東京での発表資料です

    オンライン広告における不正クリック検出手法と歴史
    stealthinu
    stealthinu 2016/09/07
    まんまコメントスパムとかメールのスパム対策と通じる話だったが収益と直結してるためにさらに高度化してる感じ。業者側がマウスやスクロールもちゃんと偽装するようにしてるとか人力も普通に使われてるとか。
  • http://www.otahana.com/?p=320

    stealthinu
    stealthinu 2016/09/07
    うわぁ… これは。やっぱ完全にパチンコ屋が占めてた場所をソシャゲ屋が侵食したって感じだな。はあ… 変ないい訳だが、まあでも同じ業界内の人だから、ということで少しだけ気持ちが楽だ。
  • 蓮舫、1997年(30歳の時)に「私は台湾籍」と雑誌で告白していた事が判明 : 痛いニュース(ノ∀`)

    蓮舫、1997年(30歳の時)に「私は台湾籍」と雑誌で告白していた事が判明 1 名前: バズソーキック(アルゼンチン)@\(^o^)/:2016/09/06(火) 23:43:15.81 ID:/NN+TlnP0● しかも、父親の出身地である中国に留学www 台湾人でも、外省人やからなこいつwww ツイッターソースは削除されるらしいので、 アップローダーに画像上げ直した 当時の雑誌 http://www.dotup.org/uploda/www.dotup.org994641.jpg 憧れの中国 http://www.dotup.org/uploda/www.dotup.org994643.jpg 台湾籍と告白している場所「自分の国籍は台湾なんです」 http://www.dotup.org/uploda/www.dotup.org994645.jpg https://twitter.co

    蓮舫、1997年(30歳の時)に「私は台湾籍」と雑誌で告白していた事が判明 : 痛いニュース(ノ∀`)
    stealthinu
    stealthinu 2016/09/07
    今から約20年前の30歳当時で「自分の国籍は台湾なんですが」と言ってたらさすがに弁明とあわないよな。二重国籍状態になってること認識してたから突っ込まれた時にあの返答したって見えるのだが。
  • 蓮舫氏「私は日本人です」台湾籍を放棄する書類提出

    “二重国籍”ではないかという指摘を受けて、台湾籍を離脱する手続きを改めて取ったということです。 民進党・蓮舫代表代行:「きょう、台湾の代表処に対して台湾籍を放棄する書類を提出しました。そのことによって、しっかり私は日の法律の下では日人です」 民進党代表選に出馬している蓮舫代表代行は、これまで「18歳の時に日人を選んだ」と説明していました。ただ、台湾籍を抜いたことの確認を求めているものの時間が掛かっているため、6日に改めて離脱の手続きを行ったということです。

    蓮舫氏「私は日本人です」台湾籍を放棄する書類提出
    stealthinu
    stealthinu 2016/09/07
    二重国籍になってたこと自体もチェックが甘いなあと思うがそれ突っ込まれた時の対応がまずかったよね。突っ込まれた時点ですでに認識あったはずなのにあの受け答えは。
  • MySQL で utf8 と utf8mb4 の混在で起きること - tmtms のメモ

    MySQLUTF-8 で使おうと思ってハマりがちなのは charset utf8 を指定してしまうことです。 MySQLUTF-8 には歴史的事情により utf8 と utf8mb4 の二つあります。 UTF-8 は1バイト〜4バイトで1文字が構成される文字コードですが、MySQL の utf8 は4バイト文字を扱うことができません。ハマりたくなければ utf8mb4 を使いましょう。 utf8 を使ってしまった場合に4バイト文字がどのように扱われるか、自分でもうろ覚えだったのでメモしておきます。 登録 接続が utf8mb4 でカラムが utf8mb4 あたりまえですが、そのまま登録されます。 mysql> insert into utf8mb4 (c) values ('美味しい🍣と🍺'); mysql> select * from utf8mb4; +--------

    MySQL で utf8 と utf8mb4 の混在で起きること - tmtms のメモ
    stealthinu
    stealthinu 2016/09/07
    MySQLではutf8とutf8mb4と名前似てるからって混在させるとめちゃくちゃになるという話。utf8mb4を使うのが吉と。とみたさんホッテントリ。