- 1つの修正ごとにブランチを切ってベンチマークを実行する
- ブランチ名はアルファベット・数字のみで記号は含めない
- 以下を PR に添付する
- ベンチマークの実行結果
- スロークエリの解析結果
- アクセスログの解析結果
各種手順を Todo リストにしたテンプレートを用意しているためそちらを利用する
各種コマンドは isucon ユーザーで SSH 接続する想定で作られています。 isucon ユーザーで SSH できるように、以下を参考に公開鍵を登録してください。 https://isucon-workshop.trap.show/text/chapter-2/2-EnterServerAndSomeSetting.html
cd ~/.ssh
ssh-keygen -t ed25519 -f isucon13
cat ~/.ssh/isucon13.pub
<public key>~/.ssh/config
Host isucon13
HostName ec2-18-179-36-166.ap-northeast-1.compute.amazonaws.com
User isucon
IdentityFile ~/.ssh/isucon13.pub
echo "<public key>" >> ~/.ssh/authorized_keyshttps://isucon-workshop.trap.show/text/chapter-3/0-Github.html
Makefile- 各種変数を更新
BIN_NAMESERVICE_NAMEMYSQL_DB_NAME
- ベンチ実行コマンドを更新
- 各種変数を更新
setup.shdeploy.sh- 接続する SSH ユーザ名を更新
config/alp.yml
- MySQL・nginx の設定ファイルをホームディレクトリ下にコピー
- alp
- pt-query-digest
- pprof
ssh isucon13
make setupmake setup 実行後に行うこと
git add mysql/* nginx/*
git commit -m "add MySQL and nginx config files"
git push origin mainhttps://isucon-workshop.trap.show/text/chapter-3/1-SlowQueryLog.html
https://isucon-workshop.trap.show/text/chapter-3/2-AccessLog.html
cp /home/isucon/webapp/go/.env.example /home/isucon/webapp/go/.env
sudo systemctl restart isupipe-go.servicehttps://newrelic.com/jp/blog/how-to-relic/isucon-go-agent
https://isucon-workshop.trap.show/text/chapter-3/3-pprof.html
ssh isucon13ssh isucon13
make mysqlssh isucon13
make benchssh isucon13
make slowqssh isucon13
make alpメインブランチ
make deploy特定ブランチ
make deploy-<branch name>以下がデプロイ対象で、リスタートも自動で行なっているため追加作業は不要
- アプリケーション
nginx.confmysqld.cnf
ssh isucon13
make check-service-statusssh isucon13
make watch-service-logリアルタイムで更新されるため基本的に常に起動しておく
ssh isucon13
topssh isucon13
sudo grep -E "/api/user/.+/icon" /var/log/nginx/access.log
sudo zgrep -E "/api/user/.+/icon" /var/log/nginx/access.log.gz- ISUCON初心者向け講習会
- matsuu/aws-isucon
- south37/00_timeline.md
- ISUCON入門以前_ISUNARABE_LT#1
- 壁を感じたISUCON12本戦
- ISUCON予選突破を支えたオペレーション技術
- Linuxサーバにログインしたらいつもやっているオペレーション
- ISUCON4 予選でアプリケーションを変更せずに予選通過ラインを突破するの術
- ISUCONで学ぶ Webアプリケーションのパフォーマンス向上のコツ 実践編 完全版
- ISUCONの勝ち方 YAPC::Asia Tokyo 2015
- ISUCON予選突破を支えるオペレーション技術 / Web Operations about ISUCON
- Ansible playbooks for isucon
- [ISUCON用] 複数台同時デプロイスクリプト(Golang)
- MEMORYストレージエンジンでMySQLのパフォーマンスをあげよう
- traP-isucon-newbie-handson2022
- matsuu/kataribe
- jpr5/ngrep
- netdata/netdata
- 単独のサーバーの「負荷」の正体を突き止める
- MySQLのストレージエンジンについて