Enviar pesquisa
Carregar
俺なりのISUCONとかの戦い方
•
2 gostaram
•
2,353 visualizações
rch850 -
Seguir
@ 福井技術者の集い #4
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 46
Baixar agora
Baixar para ler offline
Recomendados
火事の時に電話とSlackでお知らせするネタIoT (笑)
火事の時に電話とSlackでお知らせするネタIoT (笑)
紘之 大田黒
第1回AI4SEセミナー
第1回AI4SEセミナー
y-maezawa
SORACOM UG Explorer 2018 - IoTxAIを活用した小売業向け店舗解析サービスの仕組みとノウハウ
SORACOM UG Explorer 2018 - IoTxAIを活用した小売業向け店舗解析サービスの仕組みとノウハウ
紘之 大田黒
Open Fab Night Sensor Special - Android編
Open Fab Night Sensor Special - Android編
Akira Hatsune
Developers Summit Summer 2018 - 1日10TB以上の店舗映像を解析するサービスの仕組みとノウハウ
Developers Summit Summer 2018 - 1日10TB以上の店舗映像を解析するサービスの仕組みとノウハウ
紘之 大田黒
Arに対する古典分子動力学シミュレーション
Arに対する古典分子動力学シミュレーション
dc1394
Splunk機械学習を使ったアンケートコメント分析
Splunk機械学習を使ったアンケートコメント分析
Maruyama Junichi
SeleniumConf Chicago 参加報告
SeleniumConf Chicago 参加報告
aha_oretama
Recomendados
火事の時に電話とSlackでお知らせするネタIoT (笑)
火事の時に電話とSlackでお知らせするネタIoT (笑)
紘之 大田黒
第1回AI4SEセミナー
第1回AI4SEセミナー
y-maezawa
SORACOM UG Explorer 2018 - IoTxAIを活用した小売業向け店舗解析サービスの仕組みとノウハウ
SORACOM UG Explorer 2018 - IoTxAIを活用した小売業向け店舗解析サービスの仕組みとノウハウ
紘之 大田黒
Open Fab Night Sensor Special - Android編
Open Fab Night Sensor Special - Android編
Akira Hatsune
Developers Summit Summer 2018 - 1日10TB以上の店舗映像を解析するサービスの仕組みとノウハウ
Developers Summit Summer 2018 - 1日10TB以上の店舗映像を解析するサービスの仕組みとノウハウ
紘之 大田黒
Arに対する古典分子動力学シミュレーション
Arに対する古典分子動力学シミュレーション
dc1394
Splunk機械学習を使ったアンケートコメント分析
Splunk機械学習を使ったアンケートコメント分析
Maruyama Junichi
SeleniumConf Chicago 参加報告
SeleniumConf Chicago 参加報告
aha_oretama
Asp.netアプリケーションの最新プロファイリング
Asp.netアプリケーションの最新プロファイリング
Kiyoaki Tsurutani
ETロボコンのすすめ
ETロボコンのすすめ
Hiroyuki Takahashi
CloudFormation ことはじめ - JAWS UG 名古屋 2019年7月度
CloudFormation ことはじめ - JAWS UG 名古屋 2019年7月度
Katz Ueno
GTMF 2015: UE4で開発環境は次なるステージへ~才能のコラボーレーションでクリエイティビティはさらなる高みへ~ | エピック・ゲームズ・ジャパ...
GTMF 2015: UE4で開発環境は次なるステージへ~才能のコラボーレーションでクリエイティビティはさらなる高みへ~ | エピック・ゲームズ・ジャパ...
Game Tools & Middleware Forum
20170624 発表資料-ml
20170624 発表資料-ml
Ozawa Kensuke
ようこそ! Swift Playgroundsへ
ようこそ! Swift Playgroundsへ
KinkumaDesign
ISUCON5 予選をPHPで戦った話
ISUCON5 予選をPHPで戦った話
Suguru Shirai
Visual Studio Code のこれまでとこれから at OSC 2021 Online/Spring
Visual Studio Code のこれまでとこれから at OSC 2021 Online/Spring
Issei Hiraoka
Spring Bootハンズオン ~Spring Bootで作る マイクロサービスアーキテクチャ! #jjug_ccc #ccc_r53
Spring Bootハンズオン ~Spring Bootで作る マイクロサービスアーキテクチャ! #jjug_ccc #ccc_r53
Toshiaki Maki
IoT Cyber Security Counter Measurement
IoT Cyber Security Counter Measurement
Kiyoshi Ogawa
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
Hideki Takase
ICT Trouble Shooting Contest
ICT Trouble Shooting Contest
kuro kuro
Friendly
Friendly
Takaaki Suzuki
Com camp2014
Com camp2014
彰 村地
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
Hiroshi Maekawa
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
GuildWorks
Visual studio 2015 update1 ctpとcsi
Visual studio 2015 update1 ctpとcsi
Tadahiro Ishisaka
ぼっけもんデザイナーへの道
ぼっけもんデザイナーへの道
Hideki Akiba
リーンとかいろいろあるけどどう違うの
リーンとかいろいろあるけどどう違うの
Taro Kawai
Logic Apps/Flow Update Summary
Logic Apps/Flow Update Summary
Tomoyuki Obi
宇宙アイデアソン in 福井 2016
宇宙アイデアソン in 福井 2016
rch850 -
劇場版ラブライブ!入場特典の需要と供給
劇場版ラブライブ!入場特典の需要と供給
rch850 -
Mais conteúdo relacionado
Semelhante a 俺なりのISUCONとかの戦い方
Asp.netアプリケーションの最新プロファイリング
Asp.netアプリケーションの最新プロファイリング
Kiyoaki Tsurutani
ETロボコンのすすめ
ETロボコンのすすめ
Hiroyuki Takahashi
CloudFormation ことはじめ - JAWS UG 名古屋 2019年7月度
CloudFormation ことはじめ - JAWS UG 名古屋 2019年7月度
Katz Ueno
GTMF 2015: UE4で開発環境は次なるステージへ~才能のコラボーレーションでクリエイティビティはさらなる高みへ~ | エピック・ゲームズ・ジャパ...
GTMF 2015: UE4で開発環境は次なるステージへ~才能のコラボーレーションでクリエイティビティはさらなる高みへ~ | エピック・ゲームズ・ジャパ...
Game Tools & Middleware Forum
20170624 発表資料-ml
20170624 発表資料-ml
Ozawa Kensuke
ようこそ! Swift Playgroundsへ
ようこそ! Swift Playgroundsへ
KinkumaDesign
ISUCON5 予選をPHPで戦った話
ISUCON5 予選をPHPで戦った話
Suguru Shirai
Visual Studio Code のこれまでとこれから at OSC 2021 Online/Spring
Visual Studio Code のこれまでとこれから at OSC 2021 Online/Spring
Issei Hiraoka
Spring Bootハンズオン ~Spring Bootで作る マイクロサービスアーキテクチャ! #jjug_ccc #ccc_r53
Spring Bootハンズオン ~Spring Bootで作る マイクロサービスアーキテクチャ! #jjug_ccc #ccc_r53
Toshiaki Maki
IoT Cyber Security Counter Measurement
IoT Cyber Security Counter Measurement
Kiyoshi Ogawa
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
Hideki Takase
ICT Trouble Shooting Contest
ICT Trouble Shooting Contest
kuro kuro
Friendly
Friendly
Takaaki Suzuki
Com camp2014
Com camp2014
彰 村地
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
Hiroshi Maekawa
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
GuildWorks
Visual studio 2015 update1 ctpとcsi
Visual studio 2015 update1 ctpとcsi
Tadahiro Ishisaka
ぼっけもんデザイナーへの道
ぼっけもんデザイナーへの道
Hideki Akiba
リーンとかいろいろあるけどどう違うの
リーンとかいろいろあるけどどう違うの
Taro Kawai
Logic Apps/Flow Update Summary
Logic Apps/Flow Update Summary
Tomoyuki Obi
Semelhante a 俺なりのISUCONとかの戦い方
(20)
Asp.netアプリケーションの最新プロファイリング
Asp.netアプリケーションの最新プロファイリング
ETロボコンのすすめ
ETロボコンのすすめ
CloudFormation ことはじめ - JAWS UG 名古屋 2019年7月度
CloudFormation ことはじめ - JAWS UG 名古屋 2019年7月度
GTMF 2015: UE4で開発環境は次なるステージへ~才能のコラボーレーションでクリエイティビティはさらなる高みへ~ | エピック・ゲームズ・ジャパ...
GTMF 2015: UE4で開発環境は次なるステージへ~才能のコラボーレーションでクリエイティビティはさらなる高みへ~ | エピック・ゲームズ・ジャパ...
20170624 発表資料-ml
20170624 発表資料-ml
ようこそ! Swift Playgroundsへ
ようこそ! Swift Playgroundsへ
ISUCON5 予選をPHPで戦った話
ISUCON5 予選をPHPで戦った話
Visual Studio Code のこれまでとこれから at OSC 2021 Online/Spring
Visual Studio Code のこれまでとこれから at OSC 2021 Online/Spring
Spring Bootハンズオン ~Spring Bootで作る マイクロサービスアーキテクチャ! #jjug_ccc #ccc_r53
Spring Bootハンズオン ~Spring Bootで作る マイクロサービスアーキテクチャ! #jjug_ccc #ccc_r53
IoT Cyber Security Counter Measurement
IoT Cyber Security Counter Measurement
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
ICT Trouble Shooting Contest
ICT Trouble Shooting Contest
Friendly
Friendly
Com camp2014
Com camp2014
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
Visual studio 2015 update1 ctpとcsi
Visual studio 2015 update1 ctpとcsi
ぼっけもんデザイナーへの道
ぼっけもんデザイナーへの道
リーンとかいろいろあるけどどう違うの
リーンとかいろいろあるけどどう違うの
Logic Apps/Flow Update Summary
Logic Apps/Flow Update Summary
Mais de rch850 -
宇宙アイデアソン in 福井 2016
宇宙アイデアソン in 福井 2016
rch850 -
劇場版ラブライブ!入場特典の需要と供給
劇場版ラブライブ!入場特典の需要と供給
rch850 -
落ちないサービスをAWSで
落ちないサービスをAWSで
rch850 -
User 3486
User 3486
rch850 -
Traditional server 3477
Traditional server 3477
rch850 -
Storage & content delivery amazon s3 4738
Storage & content delivery amazon s3 4738
rch850 -
Lambda 4153
Lambda 4153
rch850 -
Generic database 3464
Generic database 3464
rch850 -
Elastic load balancing 3575
Elastic load balancing 3575
rch850 -
Database dynamo db-4734
Database dynamo db-4734
rch850 -
Database amazon rds 4731
Database amazon rds 4731
rch850 -
Client 5088
Client 5088
rch850 -
Amazon rds 3605
Amazon rds 3605
rch850 -
Amazon ec2 instances 3621
Amazon ec2 instances 3621
rch850 -
Aws cloud 3654
Aws cloud 3654
rch850 -
ものづくりのためのFACEモデル
ものづくりのためのFACEモデル
rch850 -
capify all
capify all
rch850 -
半文半理の大学院から来ました
半文半理の大学院から来ました
rch850 -
Applied linear algebra
Applied linear algebra
rch850 -
なにが?どうなる?WebGL
なにが?どうなる?WebGL
rch850 -
Mais de rch850 -
(20)
宇宙アイデアソン in 福井 2016
宇宙アイデアソン in 福井 2016
劇場版ラブライブ!入場特典の需要と供給
劇場版ラブライブ!入場特典の需要と供給
落ちないサービスをAWSで
落ちないサービスをAWSで
User 3486
User 3486
Traditional server 3477
Traditional server 3477
Storage & content delivery amazon s3 4738
Storage & content delivery amazon s3 4738
Lambda 4153
Lambda 4153
Generic database 3464
Generic database 3464
Elastic load balancing 3575
Elastic load balancing 3575
Database dynamo db-4734
Database dynamo db-4734
Database amazon rds 4731
Database amazon rds 4731
Client 5088
Client 5088
Amazon rds 3605
Amazon rds 3605
Amazon ec2 instances 3621
Amazon ec2 instances 3621
Aws cloud 3654
Aws cloud 3654
ものづくりのためのFACEモデル
ものづくりのためのFACEモデル
capify all
capify all
半文半理の大学院から来ました
半文半理の大学院から来ました
Applied linear algebra
Applied linear algebra
なにが?どうなる?WebGL
なにが?どうなる?WebGL
Último
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Último
(10)
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
俺なりのISUCONとかの戦い方
1.
俺なりのISUCONとかの 戦い方 2015-10-04 福井技術者の集い #4 りちゃ /
@rch850
2.
りちゃ / @rch850 鯖江のエンジニア OS設定以上 フロントエンド実装以下 ふくもく会とかやってます
3.
高専、専攻科の時 高専ロボコンとか 高専プロコンとか ACM/ICPCとか
4.
大学院の時 国際VRコンテスト CGレンダリング
5.
KOF懇親会は 11/6(金) 高専カンファレンスは 11/7(土) オープンソース、コミュニティ活動等のテーマで発表募集 詳しくは
http://kosenconf.jp/?097kof2015
6.
http://isucon.net/
7.
Iikanjini Secure ni
surU Contest ではありません
8.
Injection de Score
wo Update Contest でもありません
9.
http://isucon.net/
10.
今回で5回目の開催 263チームが出場 オンライン予選 → 本戦
@ ヒカリエ
11.
予選概要 Google Compute Engine
を使う アクセス数やエラー数などで算出され るベンチマークスコアを競う お題は複数言語から選択可能
12.
予選突破条件 最初に3,000点を超えたチーム 上記を除く各日上位4チーム 上記を除く両日合計上位10チーム 上記を除く学生5チーム
13.
3,000点を最初に超えた チームへしこずの戦い方
14.
9月26日(土) オンライン予選一日目
15.
会場:福井県産業情報センター 協力:ふくもく会 チーム名:へしこず メンバー:rch850, macoshita, emittam
16.
17.
開始0分
18.
「始まってるの?」 「始まってるっぽい」 「あ、一昨日連絡メールきてたわ」 「おえー」
19.
開始5分 ポータルサイトを開き、 様子を見る
20.
「俺インスタンス立てるから、その間 ルール読んどいて」 「「おk」」 「人数分立てるから好き勝手遊んで」
21.
問題のOS、アプリケーションが、イ メージファイルとして提供される これを Google Compute
Engine で 読み込んで起動する。 インスタンスのスペックは指定されて いる(当然)
22.
nginx unicorn Ruby sinatra, mysql2-cs-bind MySQL 5.6 「進⃝ゼミでやったところだ!」
23.
nginx ユーザからのアクセスを最前線で受け 付けるサーバ ここで HTML ファイルとかを提供した り、裏のアプリケーションサーバに渡 したりする 同類:apache,
IIS
24.
unicorn Ruby のアプリケーションを動かせる サーバ HTTP 接続を受け付けて、Ruby
プロ セスに投げる 同類:tomcat
25.
Ruby プログラミング言語 sinatra でウェブアプリケーション mysql2-cs-bind で
MySQL 接続
26.
MySQL データベースサーバ バージョンは 5.6 ……特に言うことないです
27.
nginx worker process worker process unicorn
28.
開始45分 役割分担を決める
29.
・ベンチマークのボトルネック調査 ・Rubyのコード見て最適化 ・nginx, unicorn の最適化
30.
ベンチマークのボトルネック nginx で request_time
をログに出し て、遅いリクエストを調べる 処理時間が秒単位なのはほぼ GET / とにかく GET / をなんとかしよう! https://github.com/isucon/isucon5-qualify/blob/master/webapp/ruby/app.rb#L164
31.
Rubyのコード見て最適化 ざっとクエリ見てインデックス張る 段階ごとの処理時間をログに出す ruby のコードをクエリに書き換える 「⃝ソコードを潰す作業」
32.
平常時 「ク⃝コードだ!⃝ソっ!」
33.
ISUCON 「ク⃝コードだ!やったぜ!」
34.
db.query('SELECT * FROM
entries ORDER BY created_at DESC LIMIT 1000').each do |entry|! next unless is_friend?(entry[:user_id])! entry[:title] = entry[:body].split(/n/).first! entries_of_friends << entry! break if entries_of_friends.size >= 10! end とりあえず最新1000件 引っ張ってきて 友達の投稿以外は除去 10件に達したら終わり これ SQL で書けるやつだ 友達の投稿を取り出すコード
35.
nginx, unicorn の最適化 unicorn
の worker_processes を増 やす (20程度) nginx の worker_processes を増や す (4)
36.
開始2時間半頃
37.
「ベンチ取るか」 「おー、3000」 「……あれ、3000でトップ!?」 「何度リロードしてもトップだ」 「やったー」
38.
頼んでいた昼食の買い出しがちょうど 帰ってきたので一旦休憩 ↑このあたりが、協力:ふくもく会
39.
その後、試合終了まで
40.
MySQL メモリを使うようにする (innodb_buffer_pool_size, innodb_sort_buffer_size) 遅いクエリを探すために slow log
を mysqldumpslow にかける 「サブクエリなんとかならんかなー」
41.
アプリケーション側 erb 内のクエリを最適化 数だけあればいいのに SELECT
* して るのを COUNT に 友達関係は常に両思いだから片方だけ チェック
42.
予選結果 最終スコア 12,616点 トップは 27,232点 3,000点に最も早く到達したチーム枠 で本戦出場
43.
月末の本戦が本番! 俺たちの戦いはこれからだ!
44.
おまけ ISUCON「とか」の戦い方
45.
「とか」とは ICPC 2004 アジア地区予選愛媛大会 読む、解く、打ち込むの3人体制 4問解いて7位
46.
役割分担 あくまで初期の役割分担 時間が経つと役割が交わり、最適化され ていく 短期決戦は本当に時間が無い 役割分担大事!
Baixar agora