日頃の行い

個人的な日頃の行いをつらつら書いてます\\\\ ٩( 'ω' )و ////

ISUCON7で予選落ちしてきた

去年同様に id:hoto17296id:jp_taku2 と一緒にDarkというチームで出てきました。
結果は26772点!

f:id:arata3da4:20171023182952p:plain

去年は0点で、26722 / 0 = ∞(?)倍のスコアなのでこれこそ圧倒的成長ですね!

arata.hatenadiary.com

最終的なランキングも出てましたが、144(=12 ^2)位でした。
きりがいい。
全ランキングが出ると、来年はもっと上位目指すぞという気持ちになっていいですね。
優勝目指すぞ!ってなって、負けたとしても去年よりはあがった!とかわかるととても嬉しいです。

isucon.net

一週間夏休みを取っていたせいで、一番の懸念は当日の朝起きれるかでしたが起きれて良かったです。
(開始時刻遅くなっちゃったけど
開始時刻が遅れたので少しゆっくり目に行ったらインクの塗り合いが行われてたのがハイライトです。

やったこと

Appサーバ2台、DBサーバ1台の構成で、言語はPHPを選びました。

当日はprivateにしていましたが、ここのレポジトリを使ってコードを置いたりしていました。

github.com

あとは30分毎に今どんな状況だっけみたいな話をしたり誰がどこやってるかみたいなのを整理したりしました。

f:id:arata3da4:20171021211437j:plain

最後の1時間にsplatoonのラスト1分のBGMを流すとめちゃくちゃ焦ってよかったです(?)

www.youtube.com

f:id:arata3da4:20171024191434j:plain

便利だったこと

去年もやったんですが、Makefileによくやる作業をまとめるの便利です。

application server用のMakefile

nginx_log=/tmp/nginx-access.log

alp:
  sudo cat $(nginx_log)|alp --sum --aggregates "/icons/.+"

alp/less:
  sudo cat $(nginx_log)|alp --sum --aggregates "/icons/.+"|less -Ss

restart/php:
  sudo systemctl restart isubata.php.service

clean/nginx:
  sudo rm -f $(nginx_log)
  $(MAKE) restart/nginx

restart/nginx:
  sudo systemctl restart nginx.service

db server用のMakefile

slow_query=/var/log/mysql/mysql-slow.log

slow/ptquery:
  sudo pt-query-digest $(slow_query)

clean/slow:
  sudo rm -f $(slow_query)
  sudo systemctl restart mysql.service

mysql:
  mysql -uisucon -pisucon isubata

例えばnginxのログを一度削除して、nginxを再起動したいみたいなコマンドを作ったりしました。
ログを削除するときにログの場所どこだっけとか、
systemctlのコマンドこれであってるっけとか考えなくて良くて、
make clean/nginx でログを削除して、nginxをリスタートできます。
便利!
去年は色々書いてたけど、今年はあまり書かなかったので、みんなあんまり使ってなかったのが悲しかったです。
コマンドが1コマンドが多いから特にいらんかったみたいな話もありました。
来年はもうちょっと色々書いて便利にしていきたい。

ベンチマーカーも公開されたので、復習していこうと思います。
運営の方々当日大変だったと思いますがとても楽しめました!
ありがとうございました!

github.com