ISUCON公式Blog

WINNER'S PRIZE \1,000,000



   

こんにちは、ISUCON7で出題者チームになった @methane こと KLab の稲田です。

そろそろ皆さん準備を始められていますか?
歴代の猛者の方の中には「普段やってることを普段通りにやるチームが強い」と言う人もいますが、普段通りにするだけで試合を有意義に戦えるチームはごく一握りです。
ISUCONの試合中の緊張感は、本物の障害対応と似ています。違うのは、楽しさと苦しさのバランスと、事前に決まった終了時間があることだけです。

そんな緊張の中で競技を楽しむには、練習をしていたほうが圧倒的に有利です。
初代ISUCONの出題者であり、何度も優勝されてる tagomoris さんいわく、ISUCON参加前と参加後に最も多くのものを持ち帰った人こそが勝者です。勝者となるためにも、事前に練習して、競技時間を有意義に楽しみましょう。

さて、「何を」練習すればいいかについては、ISUCON 夏期講習 2017 を開催しました(当日の資料あり)にある @fujiwara さんの資料がとても参考になるので読んでおいてください。

私からは「どうやって」練習すればいいかのオススメを紹介しておきます。
一番してほしいのは、なるべくチームでのリハーサル形式の練習です。まとまって1試合分の時間が取れない場合でも、試合開始後2~3時間程度の流れだけでもしておいた方が良いと思います。

具体的には、 @fujiwara さんの資料にもある次のようなことを、ちゃんと手を動かして練習し、手順書やメモを残すなどして当日にググらなくても良いようにしておくことで、試合中により多くの時間をチューニングに集中することができるはずです。

  • ssh の設定
  • 例えばメンバーの公開鍵を登録して公開鍵認証にするなら、設定して sshd を再起動した後に、そのログインセッションを維持したまま、他の端末から ssh できることを絶対に確認しておきましょう。ここでミスってログインできなくなると、試合開始後3分でISUCONが終わってしまいます。

  • バックアップとリカバリ
  • 設定ファイル、データベース、その他の必要なファイルを確認し、自分のPCかクラウドに転送しておく。ファイルをバックアップしたつもりが、シンボリックリンクだけが入ってたなんてことがないように、中身も確認しておく。クラウドサービスを使う場合は、外部から見えないことを確認しておく。(公開されているのを見つけたら失格です。)また、本番では必要にならないかもしれませんが、リカバリも練習しておきましょう。バックアップができていることの確認にもなりますし、もし本当に必要になったときは確実にテンパっているからです。

  • systemctl 等の管理コマンド
  • どんなプロセスが動いているかを確認し、不要だとわかったデーモンを止めたり、ログの読み方 (
    /var/log/
    以下にログが書かれるのか、
    journalctl
    を使うのかなど) を確認しましょう。

  • モニタリングツール
  • 使い慣れたものがない場合は、資料にある netdata が良いと思います。インストールと、その見かたを把握しておきましょう。

  • プロファイリングツール
  • alp などのアクセスログを集計して重いリクエストを見つけましょう。 pt-query-digest などのツールを使って重いクエリを見つけましょう。その他、使用するかもしれない、アプリやプログラミング言語ごとのツールの使い方、結果の読み方を、手と目と頭を使って確認しておきましょう。

    それ以外にも、初期は確認・調査するべき事がたくさんあるので、誰が何をするのかの役割分担と、その手順を確認しておきましょう。アクセスログの集計ツールなどを普段使っていない場合は、ちゃんとインストールしてから動かすまでを実際にしてみましょう。より長い時間をチューニングに使うことができますよ。リハーサル形式の練習の題材としては、去年のISUCONの予選か、pixiv さんの社内ISUCONを利用すると良いと思います。

    古いISUCONの問題は、特に変化が激しい言語だと動かすことすらままならないかもしれません。また、本戦の問題は、毎年何かしらクセのある問題なので、あまり事前練習には向かないと思います。上記の2問については、まだ1年しか経っていませんし、重いクエリを見つけて解決するといった定番のチューニングの練習ができると思います。 ただし、pixiv private isucon はディストリビューションとして Debian を利用していますが、予選ではUbuntuを利用する予定なので、練習するときはディストリビューションによる違いに気をつけてください。

    さらにチューニングの練習をしたい場合は、まず自力でできるところまでチューニングしてみて、その後解説・攻略記事を探してそれに習って高得点を出してみましょう。 pixiv 社内 ISUCON については私が書いた攻略記 もあるので参考にしてください。

    攻略記事を参考にするときは、単に同じことを実装してみるだけでなく、どうすればそのチューニングをすればいいことにノーヒントで気づけたかを考えましょう。チューニングをする前に、自分のサーバーでモニタリングソフトを動かしてダッシュボードを見たり、プロファイルを解析したり、 netstat (今時なら ss 等) してみたりして、「よし、本番では自力でこれに気づくぞ!」と思えるようになりましょう。知識不足を痛感したときは勉強のチャンスです。

    さらに余力がある人は、過去の猛者たちの攻略記を、「どうすれば自分もこのように戦えるだろうか」と考えながら読んでみると、いろいろなヒントや練習すべきポイントが見つけられるかもしれません。
    Read more...

    【7/28 20:10追記】
    開催日の曜日に間違いがありましたので修正いたしました
    --
    学生限定となりますが参加者募集です!ちょっと締切が早いのでご注意ください!
    30

    というわけで、ISUCON7 開催&日程決定!にてお知らせいたしましたが、今年も本選に学生枠を設けます。

    予選に先立ち、学生限定イベントとして「ISUCON 夏期講習2017」を主催でありますLINE株式会社の新宿ミライナタワーにて実施することとしました。ご参加いただく皆さんには過去問にチャレンジしていただきながら、面白法人カヤックのfujiwaraさんを講師に迎えスコアアップのコツなどを解説していただきます。是非ご参加ください!
    ※fujiwaraさんはISUCON1,2,5 と三度の優勝経験を持ち、ISUCON3では出題も行っていただいたというISUCON講師として最強レベルの方でございます

    なお、今回の夏期講習参加について旅費負担をおこないますので、以下の条件がありますがご参照のうえ是非ご活用ください。
  • 関東以外の方を対象
  • 飛行機や新幹線などのご予約はご自身で行っていただきます
  • 上限はお一人税込み3万円まで
  • お申込み時に往復費用をご連絡いただく必要があります、ご注意ください

    ISUCONとは

    お題となるWebサービスを決められたレギュレーションの中で限界まで高速化を図るチューニングバトル、それがISUCONです。過去の実績も所属している会社も全く関係ない、結果が全てのガチンコバトルです。優勝賞金は今年もドドンと100万円、学生枠でも賞金が出たりと超ウルトラ太っ腹コンテストとなっております。


    ISUCON夏期講習2017 イベント内容

  • インフラエンジニアの仕事内容をご紹介
  • ISUCONの説明
  • 過去問題に参加者全員でチャレンジ
  • スコアアップのコツを解説

  • といった内容を予定しています。

    参加者の方には、こちらで用意したLinuxサーバ環境で過去問題にチャレンジしていただきます。当日は、お使いになるPC (ssh接続が可能なもの) をご持参ください。

    イベント終了後、LINE株式会社のスタッフを含め懇親会を開催いたします。是非お越しください。なお、一緒にISUCONに参加するチームメンバーの募集も当日おこなっていただけます



    開催概要


    【日程】2017年8月25日(金)
    【時間】13:30開場 14:00開始 18:00 終了予定(終わり次第、懇親会を予定)
    【場所】LINE株式会社
    〒160-0022 東京都新宿区新宿四丁目1番6号 JR新宿ミライナタワー23階
    【定員】30名
    【参加費】懇親会を含め無料
    【必須の経験・スキル】
  • 学部生・院生共に学年不問
  • 理系・文系問わずWebエンジニアに興味のある方
  • 基本的なプログラミング経験のある方(Perl/Ruby/Python/PHP/Node.js/Goのいずれかでのプログラミングが可能であること)
  • RDBMS(MySQL)を使用したプログラミング経験のある方
  • LinuxやMac OSX等のUNIX系OSで基本的な操作が行える方
  • 開発作業が可能なノートPCをご持参ください


  • 申し込み方法

    参加希望の方は応募フォームからご応募ください。
    ISUCON夏期講習2017 参加登録フォーム
    ※締切は8月6日(日)23:00です
    ※人数に限りがございますので、応募者多数の場合は抽選とさせていただきます
    ※抽選とならなかった場合も締切後にご連絡いたします


    不明な点などは ISUCON公式Twitter @isucon_official までお願いします。DMはどなたからでも受け取れますのでご連絡ください。

    皆さんのご応募をお待ちしております!

    謝辞
    ISUCON夏期講習2017 に関して、予選と本選でサーバをご提供いただく予定であるさくらインターネットさまに運営用サーバをご提供いただいております。誠にありがとうございます!
    Read more...

    9/18 20:49【追記】
    順位に不備があったため修正いたしました、詳細は本文をご覧ください。

    --
    ISUCON6 本選出場者が決まりましたのでお知らせいたします。
    1日目、2日目を通して実際にスコアが登録されたのは251チーム、合計14,421回のベンチマークが実行されました。これは平均すると1チームあたり57.4回実行されたことになります。

    おさらいですが、本選出場へ参加する条件は以下となっています。

    ・予選各日の終了時スコアにおける上位3チーム
    ・予選両日を通し、1の該当チームを除いた中での上位9チーム
    ・予選両日を通し学生枠参加チーム内における上位10チーム
     ※ただし、学生チームが一般枠の基準で通過した場合、学生枠はそのチームを含めずに10チームを選出する

    追記
    当初「運営へのアカウント共有設定が無かった」として「オシャレ怪盗スワロウテイル」チームが失格となっていましたが、再検証の結果、共有設定が確認できました。運営側の不備ですので、協議の結果上位9チームに1チーム追加し上位10チームを本選出場といたします。
    追記ここまで

    結果、本選出場者は以下のようになりました。チーム名とスコアのセットで表記しています。代表者の方へはあらためてメールにてご連絡いたしますのでお待ち下さい。参加者の皆さん、インスタンスは停止していただいてOKです。

    予選第1日目TOP3枠
    1. この技術部には問題がある! 251,425
    2. 山形組 223,103
    3. Anago 164,270

    予選第2日目TOP3枠
    1. negainoido 172,427
    2. 流れ弾 155,568
    3. 坂寝 148,431

    それらを除いた上位10チーム
    1. それぞれの椅子 155,999
    2. 一元 153,749
    3. しましまスペシャル 147,028
    4. morimoto組 143,366
    5. にるぽ 124,271
    6. 円山町 118,499
    7. ご注文はpoyoですか? 101,690
    8. Jingisukan 100,384
    9. オシャレ怪盗スワロウテイル 95,289
    10. 反社会性 90,214

    以下の4チームは、最終スコアは上位10チームを上回っていたものの、それぞれ下記の理由により失格となりました。

    再起動後のチェックで正しいレスポンスを返せなかった
    ・ヴェンティッグ
    ・チームおにやんま

    指定されたリソースグループ内にインスタンスが無かった
    ・堕天php

    2日の競技を通した最高スコアは、「反社会性」チームによる 323,037 でした。ちなみに学生のチームでした。「反社会性」チームは最終スコアでも 90,214 で学生枠ながら一般枠での通過となりました。

    学生枠
    1. チームえっち 72,010
    2. Catechin 62,116
    3. (´・ω・`) 44,205
    4. チーム卒業 42,979
    5. balss 23,129
    6. エンボディパイプ椅子 22,479
    7. atom 22,191
    8. : innocent: 19,610
    9. kstm 18,223
    10. RUDT 16,052


    以上、 26 チームが本選出場となります。

    本選は10月22日(土)に LINE株式会社の渋谷ヒカリエオフィスにて行います。本選参加は当日渋谷ヒカリエにお越しいただける方のみとし、オンラインでの参加は不可とします。また、予選と本選でチームメンバーの交代は出来ませんのでご注意ください。

    本選出場チームの代表の方へはあらためてご連絡いたしますので、お待ちください。オンライン予選にご参加いただいた皆さん、まことにありがとうございました。


    ご参加いただいた皆さんの感想などはこちらにまとめています。
    ISUCON6 オンライン予選 Tweet まとめ#isucon - Togetterまとめ
    ISUCON6 オンライン予選 関連エントリまとめ : ISUCON公式Blog

    Read more...

    ISUCON6 オンライン予選の参加登録を開始&参加チームとメンバーリスト でお知らせしていますが、予選の参加登録は2016年9月9日(金) 12:00:00 JST です。つまり今週です。皆様、申込忘れのないようお願いします!

    さてさて今年の賞金は1位が100万円というのは既にお伝えした通りですが、今年は学生の2位も賞金が出ちゃいます!やりましたね!とはいえ予算は有限ですので、このようになりました。ISUCON6の賞金内訳です。

    優勝 100万円
    準優勝 30万円

    学生1位 30万円
    学生2位 10万円

    特別賞 10万円


    です!学生枠での賞金を増やしちゃいました。なんと1位が30万円!2位だと10万円!3人だと分けにくい!!

    「100万円目指すのは難しくても学生枠の中なら可能性あるのでは!?」と思った皆さん。
    予選の参加登録締め切りは2016年9月9日(金) 12:00:00 JST です。お忘れなく!「本選は渋谷だし無理だなあ」と思った学生の皆さん。ISUCON6 学生限定で本選参加時の旅費負担を実施いたします!よ!万全ですよ!しかも本選の日は昼飯&晩飯まで出ます!コーヒーもつける!

    はい、というわけで今年は是非学生の皆さんにも頑張っていただきたいと思っておりますので宜しくお願いします。オンライン予選に登録しなくては何も始まりませんので、皆様こぞってご参加ください。今のところ一般枠が174組、学生枠は30組です!学生枠はオンライン予選の上位10組が本選出場できますので、ちょっと頑張れたら本選出場も余裕で狙えますね!Failしなければ結構いけるはず!これはもう応募するしかない!

    また、一緒に参加するメンバーが見当たらない… という方のためにこういったものもご用意しております。是非ご活用ください。
    来たれ!おひとり様! ISUCON6 参加メンバー募集エリアを用意しました


    質問などは Twitter @isucon_official までお願いします。DMでのやりとりも可能です。(どなたからでもDMを受け取れるようになっています)

    また追ってお知らせしますが、さらに副賞も出る予感…!!お楽しみに!というわけで皆さんのご応募、お待ちしております。予選の参加登録は2016年9月9日(金) 12:00:00 JST ですよ!

    こちらから!
    ISUCON6 オンライン予選の参加登録を開始&参加チームとメンバーリスト

    Read more...

    ISUCON6 オンライン予選の参加登録を開始&参加チームとメンバーリストにてお知らせしていますが、オンライン予選を9月17日(土),18日(日)に開催いたします。今回は本選の学生枠が増えたということもあり、サーバー提供でご支援いただくMicrosoft@myfinderさん、出題をご担当いただくpixiv@edvakfさん、はてな@songmuさんに、ISUCONの魅力や出場するメリットやISUCON6の運営に関わることになったきっかけなどについて色々と聞いてみました。
    001
    左からmyfinderさん、edvakfさん、songmuさん

    まず最初に、ISUCONとはシンプルに「Webアプリケーションを早くする」というものです。趣味でプログラミングをしている人は多いですが「Webアプリを早くする」というのは、仕事でやらないとあまりやらないジャンルで、仕事じゃなくてやれるというか仕事じゃない状態でそれをやるのは珍しい。そんな技術コンテストです。優勝賞金が100万円、多くのエンジニアが参加するイベントとなっています。

    念のためですが、ISUCON6はこのような日程です!
    ・ISUCON6 オンライン予選 9月17日(土)、18日(日)の二日間のいずれか
    ・ISUCON6 本選(渋谷ヒカリエ)10月22日(土)

    参加登録絶賛大募集中です!!
    ISUCON6 オンライン予選の参加登録を開始&参加チームとメンバーリスト

    ISUCON5出題チームへのインタビューもあわせてどうぞ
    「ISUCONの楽しさや参加するメリット、得られる経験って何?」ISUCON5 出題チームインタビュー

    ――今日は宜しくお願いします!まず最初に、皆さんのISUCON参加経験を教えてください

    Read more...

    ↑このページのトップヘ