hitode909の日記

以前はプログラミング日記でしたが、今は子育て日記です

ISUCONの予選に出た

土曜日に「即興パフォーマンス」というチーム名でid:tkzwtksid:akiymと予選に出た.

開始時間が遅れたのでビール飲んで待ったり,ジャンプを読んだり,テレビの砂嵐を見て心を落ち着けたりしていた.昼ご飯にうなぎの出前を取ったのが良かった.オフィスまで届けてもらえるのでまたイベントがあったら頼もうと思う.

あきらかに画像がMySQLいつっこまれてるのが変だったので最初にそこをなんとかした.3台ともアプリケーションをデプロイして,DBが立ってるやつをイメージサーバーという扱いにする,最初から入ってる画像もファイルに書き出しておきつつ,POST /profileが来たらイメージサーバーにproxy_passして,その場でファイルに書き出す.GET /iconcs/もイメージサーバーから返す,とした.1箇所に集めることで変なことが起きずらくなって良いだろうという見立てで,うまくいった.Perl側の実装と,3台構成にしてnginxの設定をする役,みたいに分かれて作業できた.

あとは,N+1クエリを地道に直したり,クエリ改善したり,インデックス貼ったり.ふだんから一緒に仕事してることもあって,うまく分担して進められた.チャンネルごとの投稿数のカラムを用意しようとしたけどぎりぎり間に合わず断念した.

去年は延々とencode_utf8をつけたり外したりして数時間過ごしていたので,その反省として,「落ち着く」をテーマに行動していた.3人が同時に発話したら落ち着きを失っている.10回くらい,落ち着きましょうって言ってた.結果は13万点くらい.わりとうまくいったと思うけど,同僚のチームは20万点越えたり,今日は強いところは30万点くらい行ってたという話もあるので,本戦には行けないであろう….

去年の様子.正しいコードを書きたい,と書いているけど,今年もコードはめちゃくちゃで,本番サーバーでエラーが出てすぐに直してまたデプロイ,とかしていた.gitでデプロイせず,手元からrsync,という方式だったのが良くて,1文字直して即座にデプロイとかできていた.

普段コード書く仕事をしているけど,実際には実装力が全然足りなくて,コンテストでも勝てず,全然だめ,ということが分かったのがよかった.感覚的には2倍くらい正しく正確なコードを書けるようになりたい.

blog.sushi.money

https://www.instagram.com/p/BafjKalF-8V/

https://www.instagram.com/p/BagunCXFgXY/