YAPC::Asia 2011 Tokyo 1日目まとめ
解決: insertはブロックしないので、incr/decrをinsertしておき、非同期にupdate。アプリによって人気が大きく違うので、特定行にアクセスが集中してしまうことがある。ユーザー間のバラツキはあまりないんだけど #yapcasia
2011-10-14 15:37:17事件2: INSERT vs DELETE。同じAPI。Tで始まる有名な奴らしいんだけど興味シンシン #yapcasia
2011-10-14 15:38:17purge処理が追いつかない。マスターで全力でdeleteするとスレーブが遅延する。そのためsleepするんだけど、安全側にたおしすぎると夜間などは待ちすぎてムダ #yapcasia
2011-10-14 15:39:4816:00 からスイーツエリアにて Marc Lehmann 先生による App::staticperl 始まります! #yapcasia
2011-10-14 15:40:15sleep時間をアダプティブにするモジュール作ったが使わなかった。SET SESISON sql_log_bin =0 でレプリケーションしないようにしておいて、マスターとスレーブに同じDELETE文を打ち込む #yapcasia
2011-10-14 15:42:01一時的にレプリケーションを止めて複数のサーバーに同じSQLを打ってレプリケーション遅延を回避する。かー。なるほど。 #yapcasia
2011-10-14 15:42:31ループをコールバック式にして、負荷を考慮してwait を入れる方式を実装した…けど、他の方式にしたのでやっぱやめ。 #yapcasia
2011-10-14 15:42:49おかわり作戦: スレーブを止める → DELETE文実行 → マスター候補に → 追いつく。これから試す #yapcasia
2011-10-14 15:43:04去年スポンサーしてくれたのに 前夜に徹夜で遊んでしまったためにこられなかった S.P.さんが来たwww #yapcasia
2011-10-14 15:44:33防止策。DELETEでデータサイズを保つというのはINSERTの多いアプリでは夢物語。partitioningなどを最初から考えておくべき #yapcasia
2011-10-14 15:44:45事件3:有名人問題。公式ユーザーのお友達は30万人とかいる。そういう人に対するfriend limelineの抽出は地獄 #yacasia
2011-10-14 15:46:03データベースでLIMIT/OFFSETするのではなく、Perl側でやる。1000件を単位としてパイプライン処理みたいにループする #yapcasia
2011-10-14 15:51:09前職の同僚と再会。聞けば、よくお世話になってる神泉方面の某社にいるらしい。世間は狭い。 #yapcasia
2011-10-14 15:53:13