見習いの見習いプログラマスマートフォン用の表示で見る見習いの見習いプログラマまだまだ先は長いこの広告は、90日以上更新していないブログに表示しています。2014-09-29ISUCON4予選で撃沈してきた話てごわいisucon4予選してきました。13000くらいでした。「み(ぃお)た(け)ら(れれ)団子」ってことで「みたらし団子」で参加してたのでした。たけ氏には、確実に倒せそうなテンプレ周りとかunixソケット化とか色々お願いしてたとおもう。さんにはnata2とかいれてもらったり雑用たんまりお願いしたりとか。どんな問題?いすこん銀行、IPアドレス同一で10連続、パスワードとかまちがえて3回連続で制限ふっかけるとかそういう感じの部分をなんとかしてくださいってことらしい。オンラインバンクなのに金額出ないし振り込めないし、なんかやばそうな銀行なので預けてはいけません。結構な量になるから多分重たいというか、取得SQLがアレっぽいなーもうこれ、RedisかMemcacheに全部載せてしまえば?上位層絶対これやってるしょー、下手したらweb側でなんかしてそうーとかいう結論にいたり、Memcacheに仕様にそってデータをいれてみる。みたいなキーを作ってえっさこっさする今見てもじつにひどい実装https://github.com/miio/isucon4/blob/master/helpers.js#L116不一致で死にまくり夕方までFail祭り。初期データのキャッシュ温めしてないことに気付き制作。みてもこれstringifyでやらかしてるんですがねぇーhttps://github.com/miio/isucon4/blob/master/memcache_init.js#L12抽出SQLつらいわーとか言ってたら、たけ氏がレポート提出用のパクって作ればいいんじゃね?とか言ってきたので量産されるコピペメソッド。たけ氏天才か?whttps://github.com/miio/isucon4/blob/master/helpers.js#L273ヒットしないキャッシュたちキャッシュを全部温めたので理論上キャッシュfailはしないはず(消してもいなくて更新しかしてないから)なのになんかヒットしないパターンが多数あって、その結果重たいSQL直撃してたらしい未だに原因不明なので原因見つけたらまとめたいなぁ。SQL直撃なのでインデックスだけ。${mydb}こんなのおいときゃまぁ上がるっしょーってことで5分くらいで見つけてこれいれたら3000くらいあがったんだっけ。感想まぁ冒険しすぎたけど、今回は母数も増えすぎてたし、冒険しないと頭打ちにはなるだろうなーとは思っていました。memcacheでヒットしない件は温めスクリプト改造したので検証したら、ヒットしないケースがあったのでちょっと詳しく調べたいところ。いうか、Redis力あればRedisにいれたほうが確実だった可能性もあるらしくてつらいなー。27鳩さんありがとう。#yapcjapanISUCON4予選で撃沈してきた話2014年が近い2013年を振り返ってみよう月別アーカイブはてなブログをはじめよう!miio119さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。