「映画にでてくるハッカーになりたい」
cho45 <[email protected]>株式会社はてな
自己紹介
id:cho45http://www.lowreal.net/
株式会社はてな
京都8F(@hatena8f)勤務
Perl (バックエンド)
JavaScript (フロントエンド)
Ruby (ツール作り)
Scala (たまに)
Java (Android アプリ)
DSi Browser JS の実装にそれなりに詳しいです
例:DSi ブラウザの textarea でキャレットを表示する方法
JavaScript で textarea に対して focus() させるとキャレットがでる。
この状態で A ボタンを押すとソフトウェアキーボードが開かず改行
を入力することができる。
ただし何かの役に立つわけではない。
趣味
神社巡り
写真
プログラミングコード群: http://github.com/cho45
日記: http://subtech.g.hatena.ne.jp/cho45/
最近作ったもの
P::M::StaticSharedP::M::ServerStatusP::M::Random.Text::Xatena (はてな記法っぽい記法)
Niro (個人用ブログツール、Plack, DBIx::Skinny)
JSDeferred (JS 機能追加など)
git-branch-recent (Ruby)
HTML::Trim (HTML タグを考慮しつつ文字列トリム)DBIx::RewriteDSN (DBI レベルでデバッグ時一括で DSN 書きかえ)togetter_block_all_users.user.js (togetter で纏まれているユーザを一括ブロック)bdfcanvas.js (BDFフォントをcanvasに描画)oecan.js (お絵描きツール)Chemr-js (リファレンスひき支援)jAutoPagerize (なんかあれ)
本題
映画にでてくるハッカーの例
何かわからないが画面に文字が流れる
ものすごい可視化がされてる
よくわからない方法で暗号を解く
見ていて鳥肌がたつ
でもこう…もうちょい
現実的かつかっこよくならないか?
仕事で使いたい
I HATE RIAJU.
コーディングしてモテたい
実用性+
実用性だけでも面白くない
遊びだけじゃただのクソアートだ
というわけで
使えそうで使えない
でもちょっと使えるツール群
および
使えそうで実際使える
というかマジ使えるツール
のご紹介をさせて頂きます
前置き終了
実用的かつ、映画的ハッカーを追求
そのいち
tail -f /etc/httpd/access_log
ハハハ、ワロス
何をいってるんだ
ログを tail -f して
人間が得られるもの
1.動体視力
動体視力を鍛えたいわけじゃない ハッカーになりたいのだ
別に tail -f は悪くないただ何かが足りない
そこでハッカー的なことを加える
ハッカー的なこと
ハッカー的なこと
すごい可視化
realtimeresponsegraph.pl
tail -f a.log | realtimeresponsegraph.pl
tail -f からレスポンスタイムを即座にグラフにする
パフォーマンス改善の結果をすぐ出せる
レスポンスタイムグラフ
レスポンスタイムグラフ
はてなでは一日分を Hadoop で処理してグラフ化している
全解析は一日かかるので本番での
チューニング結果がすぐ解らない
demo
realtimeresponsegraph.pl の実装
use OpenGL;
select();
vec();
fileno();
my $rin = '';vec($rin, fileno(STDIN), 1) = 1;LINE: while (select($rin, undef, undef, $max_wait)) { # ...}
いろいろな機能
グルーピング (デフォルトではHTTPメソッドごとに別のラインにする)Apache ログフォーマットパーサジェネレータ
だいぶ良くなったがまだ何かが足りない
ハッカー的なこと
ハッカー的なこと
ものすごい可視化
realtimeaccesstrack.pl
realtimeaccesstrack.pl
直近アクセスを可視化 特にアクセスが多いクライアントを抽出どこにどうやってアクセスしていっているかがわかる
DOSアタック的クライアントの即時検出
ユーザ行動分析
demo
realtimeaccesstrack.pl の実装
use OpenGL;
select();
vec();
fileno();
realtimeaccessgraph.plとほぼ同じ
だいぶ良くなったがまだ何かが足りない
ハッカー的なこと
原点に還って
画面に何か流れる
Devel::KYTProf
Devel::KYTProf
id:onishi 作 (NYTProf ではない)
DBI とか memcached とか、IO に関わる処理を処理時間とともにターミナルに全て出力
空気 読んで とってくれる プロファイル だとかKYoTo Prof だとか諸説ありますが知りません
便利な点
吐かれるSQLがわかる
どこから吐かれたか
わかる!
かかった時間がわかる
demo
まとめ
realtimeresponsegraph.pl実用度 ★★★
かっこよさ ★★
realtimaccesstrack.pl実用度 ★★
かっこよさ ★★★
Devel::KYTProf実用度 ★★★★★
かっこよさ ★★★
ご静聴ありがとうございました
www.lowreal.net