読者です 読者をやめる 読者になる 読者になる

sugarlife's blog

Javaとか、http://twitter.com/sugarlife

jcmd と既存ツールの対応

はじめに この記事はJava Advent Calendar 2016の 1 日目の記事です先日の Java Casual #2) で jcmd について話してきました。 jcmd #javacasual from Yuji Kubota jcmd は Oracle 社のドキュメントでは推奨ツールとして扱われており、jps や jmap, jstat の…

OpenJDK のリポジトリから特定バージョンの Java のソースコードを落とす方法

例:JDK8u77 のソースコードを落としたい 解説 OpenJDK のソースはタグ管理されているので、JDK8 Updates Master のタグ一覧を確認する u77 の最新の b 番号は b03 なので jdk8u77-b03 が取得したいソースコード これを mercurial コマンドと OpenJDK のツー…

G1 GC おさらいと #jjug_ccc で発表した話

この記事は Java Advent Calendar 2015 の一日目の記事です。二年連続でトップバッターだ!先日の JJUG CCC 2015 Fall で G1 GC について話してきました。 去年の CMS GC と同じく結構遅めの時間帯&裏番組に伝説の灰色ページ管理人・ひしだま伝道師が発表す…

JDK9 新機能ダイジェスト (JDK9 Features) #java

JJUG ナイト・セミナー 「ビール片手にLT&納涼会」で、来年出る予定のJDK9の新機能(2015/7/31時点)について喋ってきました。JDK9の機能が全て出揃う(Feature Complete)のは 2015/12/10 ですが、これから大量に出てくるのも考えにくいので LT の時点で出てい…

「Java パフォーマンス」感想

本書の翻訳者の一人である@cero_tより献本頂きました、ありがとうございます。というわけで一週間かけて読んでみた。Amazon.co.jp: Javaパフォーマンス: Scott Oaks, アクロクエストテクノロジー株式会社(監訳), 寺田 佳央(監訳), 牧野 聡: 本www.amazo…

How specify JVM options by file.

Use -XX:+Flags=<file>. You can specify *ONLY* "-XX" options. OpenJDK checks this option when vm parses the arguments as following. JDK9 jdk9/jdk9/hotspot: 18218f0736d2 src/share/vm/runtime/arguments.cpp JDK8 jdk8u/jdk8u/hotspot: 9d6eb2757167 src</file>…

Crypt 200: Decrypt it(Easy)

ctpm として SECCON 2014 オンライン予選(en) に出ました。25位でした。SECCON2014 オンライン予選(en) - security etc...上記事の Decrypt it(Easy) を途中から一緒にやりつつ後を引き継いだのに、アホなミス('A')で取りこぼしたので、終了後に解き直したス…

コアダンプから Java 起動オプションの抜き出し方

この記事は JVM Advent Calendar 2日目 の記事です。JVM を触っているとコアを吐いて落ちる事がしばしばあります。ええ、しばしばあります。 こういう時にどのようなオプションで起動していたかをうっかり忘れると後々面倒です。 でも、実は簡単に解ります。…

あどべんとかれんだーかっといん

('ε’ )くーー ('ㅂ’ ) り ('ε’ )す ('о’ )ま ('ε’ )す ('о’ )が ('ロ’ )こ ('ロ’ )ろ ('ㅂ’ )し ('ㅂ’ ) に ('о’ )やーっ ('ㅂ’ )て ('ε’ )く ('ε’ )るーー

CMS GC おさらい

この記事は Java Advent Calendar 2014 の一日目の記事です。先日の JJUG CCC 2014 Fall で CMS GC について話してきました。 結構遅めの時間帯にも関わらず、200人規模の部屋がいっぱいに埋まるぐらいの盛況振りで、みなさんGCにお困りなんだなあと実感しま…

Java 起動(Launcher)の仕組み

※:この記事は下書き中に本文ががっつり消えたため、知らずに部分的に端折ってるところがあるかもしれません。(´;ω;`)Java、すなわち JVM (HotSpot) を立ち上げた時、どういった処理が行われているのでしょうか。正確に知りたい場合は OpenJDK のソースコ…

JavaOne 2014 で発表してきた。

JavaOne2014 で JVM 監視・トラブル解析支援ツールである HeapStats について発表してきました。 Session ID: BOF3108 Session Title: Troubleshooting with Serviceability and the New Runtime Monitoring Tool: HeapStats Venue / Room: Hilton - Contine…

JDK 8 新機能ダイジェスト (JDK 8 Features) #java

この記事は Java Advent Calendar 15 日目です! 14日目は @megascus さんの 動的SQLでPreparedStatement+プレースホルダを使用する - 水まんじゅう でした。 明日は @cero_t さんです。 まえがき いよいよ JDK 8 が来年の3月に正式リリースされます。素晴ら…

Groovy で JVM ログ解析 (ClassHistogram編) #gadvent #java

Groovy で 面倒な JVM ログを解析する (ClassHistogram) 前置き この記事はG*(Groovy, Grails ..) Advent Calendar 2013 - Qiita [キータ]の10日目です。 前日は研究室の先輩 @tetsurokitaharaさんのGracenote with Groovy でした。JVM(hotspot) は好きです…

「Java解析ツールバトル」に登壇しました & HeapStats の動かし方について #jjug

JJUG ナイト・セミナー 「Java解析ツールバトル」に HeapStats 陣営でコミッターとして参加してきました!今回のJJUGでは、自分達の JVM に深く密着してパフォーマンスに心血を注いでいる HeapStats、最近 OSS 化された Java だけでなく SQL 実行計画まで総…

公式配布のソフトウェアだけでWindowsでMOVファイルをWMVファイルに変換する方法

不慣れな人が動画変換をする場合、無料でやるためによく解らないフリーウェアを入れて変換することが多い。しかしMOVからWMVに変換するだけなら、公式で配布しているソフトウェア(無料)で変換することができた。検索してもやり方が見つかり辛いので備忘録と…

JavaでFull GCを実行する方法

Full GCを任意のタイミングで実行させ、負荷の高い処理に備えておくという戦略を取りたい時がたまにあります。基本的にはチューニングで解決すべきですが、緊急or暫定策の備忘録として。 jmap -histo:live LinuxはJDK5から、WindowsはJDK6から利用可能。生存…

Java SE 7 JavaDoc 日本語版 公開

前回の記事でJava SE 7 の日本語版 JavaDoc は公開されていないと書きましたが、先日の Java Day Tokyo 2013 で公開されました! なんてタイミングだ\(^o^)/ともあれ大変喜ばしい事です。一部英語の部分もありますが、順次アップデートされるそうです。日…

最新のOpenJDK8のJavaDoc (Java API) #yutori_history

こちらはゆとり Advent Calendar の 12 日目です。おすしたべたいので参加しました! 昨日は @mike_neck さんの mike、mikeなるままに…: ゆとりさんが鮨を奢ってくれるそうなので、感謝の気持を込めて、たくさんのプロセスに「sushi」と言わせてみた でした…

OpenJDK 8 をFedora18でビルドする

OpenJDK と戯れるため、OpenJDK ビルド用サンドボックスとして、まっさらな Fedora 18 (x86_64) 環境を用意してビルドしてみました。 以下、再構築時のための覚え書き。 Fedora 18 Fedoraはこちらのページから好きな形式で落として、KVMなりXenなりVMwareな…

退職しました

本月末で某インフラグループのSI会社を退職しました。次は同グループ持株組織の研究所系のなんたらセンターに行きます。2009年度に新卒で入社してから4年間お世話になりました。初っ端から燃え上がったJavaの鉄火場に突っ込まされたり、いつの間にかAndroid…

Apache TomEE 事始め

この記事は Java EE Advent Calendar 2012 の5日目です! Apache TomEE Apache TomEEは去年のJavaOne 2011で発表された、TomcatベースのJava EE 6 (Web Profile)対応のJava EEアプリケーションサーバです。とみーと読みます。 これにRESTfulなWebを作るのに…

G1GCのログの読み方

この記事は Java Advent Calendar 2012 の3日目です! 前の日は @btnrouge さんの「HotSpotの変遷からみたJava SE 7の考察」でした。次の日は @making さんです! G1GCのログ G1GC (Garbage First Garbage Collection) が JDK 7u4 から正式に導入されました…

GlassFish Users Group Japan 勉強会 June 2012 に参加してきた

6/4に開催されたGlassFish Users Group Japan 勉強会 June 2012 で喋らせて頂きました。 今回のテーマは 「Java EE 6 / GlassFish の再入門」でした。atnd: http://atnd.org/events/28235 togetter: http://togetter.com/li/315293最近、公私でGlassFishを触…

Google's Guava Libraries で EventBus

この記事は Java Advent Calendar 2011 の10日目です。wikiばかりで全くblogを書かないので企画の力に頼らせていただきました! 昨日の記事 >明日の記事今日はGoogleのJavaユーティリティライブラリであるGuava Librariesの最新版 10.0.1 で、新たにパッケー…

JavaOne 2011 1day

Technical Keynote Doug Sommer / Intel の講演 Registration中のため聞けず Oracle NoSQL Database Ashok Joshi Java Implements Oracle coherenceとの違いは聞けず Java SE 7 Mark ReinHold Project Coin, InvokeDynamic, Fork/Join Framework Coin : diam…

Google Developer Days 2011 JapanのDevQuizの分野別クイズのうち、Web Gameの解答を晒してみる。 ソースをさっと見ると解答送信以外では通信をしていないようなので、単純に解答を送信するようにした。 // カードの中身を引っ張り出す var scripts = docume…

はてなダイアリーへようこそ!

このページはあなた専用の日記(ブログ)です。*1さっそく「日記を書く」をクリックして最初の記事を書いてみましょう。はてなダイアリーの一番簡単な使い方を知りたい方は、以下の動画をご覧ください。(再生ボタンをクリックすると、はてなダイアリーの使…