まじめにJVMチューニングに取り組む機会があったので、忘れないようにこの記事を書きました。
GCアルゴリズムやパラメータの説明はいろいろなサイトに掲載されていたのですが、
「どうやって取り組むか」「何を見れば良いか」は意外とまとまっていなかったので。

JavaやScala製のアプリケーションはもちろんのこと、
Solr, ZooKeeper, Cassandra, Neo4J等jvm上で動くプロダクトを使う場合つねに
「JVMパラメータをどう設定するか」
という課題があります。

[続きをもっと見る…]

しっくりきたSublime Text2のテーマ

2014-01-23

インケンはsublime text2使ってるのですが、sublimeの有名なテーマってsodaとかFlatlandが有名ですが、なんかどうもしっくり来なくて探していたらよさげなのを見つけました。

Nil Theme

です。

NilがDark系で、Ayin ThemeがLight系です。

ただ、カラースキームが好みじゃなかったので、インケンはカラースキームをCobaltにしてます。

↓こんな感じ

[続きをもっと見る…]

割とググればいろいろ出てくるネタだけど、忘れないように書いておこうと思います。

slowqueryはなるべく早めに対応したいので、管理画面などで常にチェックできるようにしたい。そこでfluentd!

MySQLサーバーにfluentdのクライアントを入れて、slowqueryをfluentdサーバーに送り、そいつがmongoDBに突っ込むってわけです。

td-agentを入れる

td-agentはfluentdの安定版バッケージらしいです。なのでこっちを入れるのがよいとおも。

[続きをもっと見る…]

ajaxなページもクローラーに読ませたいですよね。
そこでPhantomJS, CasperJS, SpookyJSです。

簡単に説明するとこんな感じ

PhantomJS

コマンドラインから使える画面がないwebkitブラウザ

CasperJS

PhantomJSのユーティリティ、PhantomJSをもっと便利に使えるようにするやつ

SpookyJS

casperJSをNodejsから使えるようにするやつ

こういうことをしたい

[続きをもっと見る…]

Elasticsearchの日本語の形態素解析は基本的にkuromojiを使うのですが、けっこうよく出来てて「え?これまで拾っちゃう?」って思うこともしばしば。

かすってそうなデータも拾ってくれるのはありがたいのですが、さすがにノイズだらけって場合もあるので、スコアでフィルタリングしたいと思います。

ついでにPHPでの検索の投げ方も。

[続きをもっと見る…]

前回に引き続きPython初心者シリーズ

みずほのサイトからロト7の当選番号をすっぱ抜いてくるサンプルを紹介します。

スクレイピング

PHPでスクレイピングをやろうとすると、curlで取ったHTMLをpreg_match等を使ってDOMを解析することになりますよね(今はもっと便利なモジュールがあるのかもしれないけど)

Pythonだと、BeautifulSoupという大変便利なモジュールがあります。

パースされたデータに対しての操作が超絶便利です。

[続きをもっと見る…]

バツイチちゃんがSolrのこと書いてたので、インケンはElasticsearchのこと書きます。

xmlよりjson派なインケンとしてはsolrなんかより、elasticsearch押しです。solr使ったことないけどね!

elasticsearchはRESTリクエスト飛ばせば、検索登録更新削除すべて行うことができるのですが、RabbitMQのプラグインを使うと、登録更新削除をキューにメッセージ投げるだけでいいので、大変便利です。

MQにメッセージ投げる際には、elasticsearchのbulk api形式で送る必要があります。

その辺がわかりづらかったので、サンプル交えてご紹介します。

[続きをもっと見る…]