タグ

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

  • isuconで惨敗しました - walf443's blog

    isuconでチームフリー素材として参加しました。54,868点で8位でした 今回は、開発環境の構築で色々とてこずりました。 DBがpostgresqlだったので、手元で構築しようとしていたときに、brew updateしてしまい、postgresqldatabaseのバージョンが一致しないので起動できないという状態になってしまいました。それで色々やっていると、手元のdatabaseを壊してしまってちょっと復旧は諦め、3台のうち1台を開発サーバーにしました。 deployできるようにしようとしていたのですが、手元からsshはとおるのですが、サーバー間でsshがつながらない状態だったので、iptablesなどを疑ったのですが、わからず、仕方なく、手元へbinaryをscpして、remoteへscpしなおすshell scriptを書いてなんとかしました。 sshがつながらなかったのは、懇親

    isuconで惨敗しました - walf443's blog
  • isucon #3 予選に参加してきた - walf443's blog

    1日目で参加してきた。 今回は他の二人にアプリケーション側はお任せして、自分はミドルウェアまわりをやる、ということにしていた。 最初は、PHPを動くように設定を変更して、ベンチマークを実行していたのだけど、どうもfailしてしまう。原因を見ると、ログイン回りなので、セッションがおかしそうだ、というところまではわかったのだけど、ちゃんとした原因まではわかっていなかった。 セッションをファイルストレージに書くように変更してもfailするので、途中rubyにしようか、phpを5.5でコンパイルしなおして頑張ってみる、とか12:30ぐらいまで右往左往してた。 その後もfailし続けたので、セッションをAPCuに入れるようにしようとしてみたりとかしたが、解決できなかった。 途中で、ベンチマークスクリプトのworkloadをあげると、なんとかスコアが最後までfailしないでおける、ということがわかった

    isucon #3 予選に参加してきた - walf443's blog
  • isucon #2へ参加してきました - walf443's blog

    前回非常に楽しかったので、今回も参加したいなーと思っていたのですが、「くらげとみかん」チームで、なんとか参加できました。 走り書きだけど、考えたこと、やったことをメモっておく(あとでまとめなおすかもしれない) まずは最初に全サーバーへsshの鍵を通して、screenで全サーバーへログインした。 前回ベンチマークを走らせるのが遅かった、という反省があったので、まずベンチマークを実行した。 まずappをいじるための環境を整備した。git reposを作ったり。(11:30) 次は、アプリケーションの概要を把握するために、全tableのschemaをshow create tableしたり、全テーブルの件数を把握して、stockテーブル以外は対した容量にならない、ということを把握した。 long_query_timeを0にして、ベンチを走らせて、全クエリをslowログへ出力し、mysqldump

    isucon #2へ参加してきました - walf443's blog
    hamaco
    hamaco 2012/11/09
  • memcachedのように使えるBloomFilter - walf443's blog

    YAPCでmalaさんの話を聞いていて、memcachedのようにお手軽に使えるbloom filterがあるとひょっとすると便利かもしれない、とふと思ったのでAnyEventつかって、Bloom::Fasterのwrapperを書いてみました。 https://github.com/walf443/p5-bloomd-server 以下のようなプログラムを書いてサーバーを起動します use strict; use warnings; use EV; use AnyEvent; use Bloomd::Server my $cv = AnyEvent->condvar; my $server = Bloomd::Server->new( capacity => 100_000_000, backupdir => '.', ulog => 'ulog', ); $server->run $c

    memcachedのように使えるBloomFilter - walf443's blog
    hamaco
    hamaco 2011/11/02
    「色々なユニークユーザーの件数の集計処理をリアルタイムで実現するのに使えるかも」
  • isuconに参加してきた - walf443's blog

    isuconに参加してきた 当日の行動 ややうろ覚えですが、自分がやっていたことをざっくり書いてみます。 まず、実行用の環境へアクセスしようとしたら、reverse proxyのサーバーへしかsshできなかったので、とりあえずisuconユーザー以下にあるファイルをざっと眺める ソースいじっりするための、reposやdeployスクリプトを作ったり Devel::KYTProfをuseするようにして、ベンチマークを走らてみる → 即興で作ったdeployツールのバグに気づかず、Devel::KYTProfのログが出なくてあれー、ということで時間を使う。 → そもそもClass::Data::Inheritableがうまくuseできていないという問題があったので、とりあえずsudo -H cpanmで入れるようにした。(たぶんarch用のpathもuse libするようにすればよかったはず)

    isuconに参加してきた - walf443's blog
  • 1