こんにちは開発室の三島です。 ウィルゲートでは業務時間の5%を自己研鑽に使うことができる「5%ルール」が存在します。 今回は5%ルールを使用して社内ISUCONを開催したので、その様子をこの記事に書いていきます。
ISUCON
ISUCONは「いい感じスピードアップコンテスト」の略です。 サーバーのボトルネック解消を競い合うコンテストになります。 以下のページに詳細がありますので興味のある方は見てみて下さい。
開催の経緯
ウィルゲートではパフォーマンス・チューニングの知見が分散し、できる人とできない人に差がありました。 そのため、開発室としてメンバーにパフォーマンス・チューニングの知見を付けてもらいたいと思ったので開催しました。
運営側でやったこと
サーバーの準備
今回はただ速くするだけではスコアが上がらないISUCON9の予選問題で行うことにしました。 各チーム2台のサーバーを付与し、ISUCONに挑んでもらえるようにしました。 サーバーの準備では、証明書がハードコードされていたりと気が付かないと解決できない問題がありました。 当日まで準備を頑張ってくれた池添さんと高畑くんには頭が上がりません。
当日の流れ
開会式では簡単なルールを説明しました。1チーム3~4人の5チームに分かれてISUCONをはじめました。 各チームで頭を悩ませながらパフォーマンス・チューニングに取り組んでいました。
ISUCON初心者が多い中で、チームごとに協力して進めてくれていました。 短い時間で多くのことを行う必要があったので、ISUCONが終了するとどのチームも出し切った顔をしていました。
ISUCON終了後スコアを再測定し、優勝チームを決定しました。 優勝したチームはボトルネックの調査ツールを入れ、調査結果に基づいて実装を行っていました。調査に基づいた実装だったので、時間を無駄なく使えていたと思います。実際の業務にも活かせるのではないかと思います。
ちなみに、運営チームもISUCONに一緒に取り組みました。 結果はMySQLの設定を間違えてしまい0点となってしまいましたが、一緒に取り組めて楽しかったです。
まとめ
運営として、至らないところが多々ありましたが無事終わる事ができて安心しております。 今回社内ISUCONを開催して、色々な気づきがあったのでそちらは別の記事で紹介したいと思います。
社内ISUCONを行うことで、パフォーマンス・チューニングに興味を持ってもらえたのではないかと思います。 ISUCONの問題はよく考えれれている問題が多いので、解説をするなど違うアプローチからもパフォーマンス・チューニングに興味を持ってもらえるようにしていきたいです。 運営側で用意しておくことがわかったので、また機会があれば社内ISUCONをやりたいと思います。
当日のツイート
今日は社内ISUCONをやっています! pic.twitter.com/t3okvE0qUA
— おかしょい (@okashoi) 2020年3月5日
社内ISUCON、後半戦に入り各チーム頭を悩ませているようです。。。! pic.twitter.com/i4gB7EYDwj
— おかしょい (@okashoi) 2020年3月5日
優勝チーム発表の前に、各チームの取り組みを共有するタイム! https://t.co/wgyM4KBcFM pic.twitter.com/cwwQSFmRfe
— おかしょい (@okashoi) 2020年3月5日
社内ISUCON運営チームによる解説タイム! pic.twitter.com/B0XN5S1rXA
— おかしょい (@okashoi) 2020年3月5日