ISUCONのススメ
by
yamamoto-hiroya
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
ISUCONのススメ Hamee株式会社 山本紘也 twitter @HiroyaYamamoto1
Slide 2
Slide 2 text
Hameeでは エンジニアを 募集しております! ● Hameeはbuiderscon tokyo2019の同時通訳スポンサーをしております ● 転職をお考えの方は是非気軽に話しかけてください(選考が有利になる チケットがあるとかないとか…)
Slide 3
Slide 3 text
目次 ● ISUCONとは ● 参戦履歴 ● 学び ● まとめ
Slide 4
Slide 4 text
ISUCONとは http://isucon.net/ WEBサービスのチューニングのうまさを点数化して全国で競い合うコンテスト 名前は「いい感じにスピードアップコンテスト」(Iikanjini Speed Up Contest)の 略。 毎年10月前後に開催していて今年で9回目 予選と本選があり、予選上位数チームが本選出場
Slide 5
Slide 5 text
きっかけ 2015/08に会社のインフラエンジニアの社内発表にて存在をする 当時エンジニア2年目だった私はどこまでやれるのか試してみたいと思い参 加表明 優勝賞金100万円に目がくらむ
Slide 6
Slide 6 text
参戦履歴1 ● 2015/09 ISUCON5 ○ バナナマンズ ○ 予選落ち(T_T) ● 2016/09 ISUCON6 ○ バナナマンリターンズ ○ 予選落ち。・゚゚・(>_<;)・゚゚・。 ● 2017/10 ISUCON7 ○ バナナマンさん ○ 予選落ち༼;´༎ຶ ༎ຶ༽
Slide 7
Slide 7 text
参戦履歴2 ● 2018/09 ISUCON8 ○ バナナマンズ -4thの覚醒- ○ 予選落ち。。。 ○ ただし528チーム中64位と大健闘 ● 2019/09 ISUCON9 ○ BANANINE ○ comming soon
Slide 8
Slide 8 text
ISUCON5 ● SNSっぽいサービス ● 画面数・テーブル数が多く、ボトルネックを探すところから ● 2年目エンジニアはsshした先のサーバで色んな操作をするだけで一苦 労、時間がかかった ● 結果: 65点→1864点 ● 何の成果も得られませんでした! ● お祭りに参加できたことに満足
Slide 9
Slide 9 text
ISUCON6 ● Wikipediaのような百科事典サービス ● ボトルネック調査(ツール)→N+1クエリの改修 ● 前年よりできることが増えていることを実感 ● 直しているはずなのにスコアが伸びず… ● 結果: 0→14400 ● 前年より色々動けたが相変わらずスコアに繋がらない
Slide 10
Slide 10 text
ISUCON7 ● チャットサービス ● ボトルネック調査ツールを使わずともコードを読みながらN+1のクエリ、 臭い処理を検討つけることができた ● テーブルチェック→効きそうなところにインデックス付与で大幅点数アッ プ ● キャッシュ化対応が間に合わず ● 結果: 4097→29758 ● 確実にできることが増えているのを実感
Slide 11
Slide 11 text
ISUCON8 ● 座席の予約システム ● sinatraの素振りをやっていたおかげでローカル環境の構築がスムーズ に行え、ベンチのfail率が下がった ● ノウハウを生かしてN+1クエリや不要なループなどを愚直に直した ● 結果: 1500→15842 ● あと入れたい修正が2,3あったので全部やりきったらもう少し上を目指せ たかも?
Slide 12
Slide 12 text
No content
Slide 13
Slide 13 text
セオリー ● N+1クエリ ● インデックス ● 画像ファイルのnginxによる静的ファイル化 ● よく参照されるデータのキャッシュ化 ● データ構造の見直し
Slide 14
Slide 14 text
学び ● インデックスは大体どこに貼れば効くかは検討がつくようになった ● N+1クエリは悪 ● キャッシュ化と言ってもRedisを使うとかオンメモリに持つとか色んな方法 があるのでその都度選択する必要がある ● 通常の業務でも「速度」というものを意識するようになる ● 楽しい!\(^o^)/
Slide 15
Slide 15 text
まとめ 相変わらず予選突破できませんが、当日のお祭り感は一度経験してみること をおすすめします。 自分が社会のエンジニアとしてどのくらいの位置にいるのか客観的に分かる のでオススメです。 参加チームが増えてくれることに期待します! (1人でも参加できるけどチームの方が楽しいよ!)
Slide 16
Slide 16 text
まとめ 相変わらず予選突破できませんが、当日のお祭り感は一度経験してみること をおすすめします。 自分が社会のエンジニアとしてどのくらいの位置にいるのか客観的に分かる のでオススメです。 参加チームが増えてくれることに期待します! (1人でも参加できるけどチームの方が楽しいよ!) ISCUONやろうぜ!
Slide 17
Slide 17 text
参考 ISUCON5に参加したのでその雑記 ISUCON6に参加したのでその雑記 ISUCON7に参加したのでその雑記 ISUCON8に参加したのでその雑記 https://qiita.com/yamamoto_hiroya/items