ISUCON7に参加〜そして敗北へ〜
ISUCON初参加しました。
敗北
お題は「isutaba」というチャットツール
画像はファイルに書き出して参照させるぞ!! →できんな?
やったこと
当日まで
- 社内ISUCON(復習)
当日(まずはじめに)
- 複数台サーバまじ?構成確認
- DBのスキーマ情報確認
- show create table hoge;
- SELECT * FROM hoge LIMIT 10;
- myprofilerを入れる
- pt-query-digest (percona-toolkit)
- アクセスログ集計
Nginx
- worker_connections
- proxy_pass
- expires
MySQL
- INDEX追加
- (user.name)
- (message.user_id)
- (message.channel_id, message.created_at)
- (haveread.user_id, haveread.channel_id)
- (image.name)
アプリ改修
画像はファイルに書き出して参照させるぞ!! → できんな?
やればよかった(忘れていた)
- ソケット通信化
やりたかったけど、できなかった
- 画像の脱DB化
- /icons/* を倒す
- N+1撲滅
きづけない(次回は気づけるようにしような)
- SELECT *の撲滅
- Cache-Control
- If-None-Match、If-Modified-Since、eTag
- 304
- /fetch
- JSONレスポンス
感想
FlaskとMySQLdbを使ってアプリかこうな やるべきこと気づいて、実装できず悶々して無力だった