docs: API負荷試験の事前調査結果と試験計画を追加 - #435
Open
taminororo wants to merge 3 commits into
Open
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughSeeFT APIの負荷試験に向け、エンドポイント調査、本番構成、負荷シナリオ、k6試験手順、判定基準、リスク、後続作業を文書化しています。 ChangesAPI負荷試験計画
Estimated code review effort: 2 (Simple) | ~10 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 7
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/development/load-test-plan.md`:
- Line 3:
「作成日」の日付を現在の実際の作成日である2026年7月16日に修正するか、2026年7月17日が予定日であることが明確に分かる表記へ変更してください。
- Line 220: Remove the concrete production IP address from the documentation
sentence near the production configuration reference, and describe the
destination only as the shared Patroni-managed HA cluster. Keep the actual
address exclusively in access-controlled operational documentation.
- Line 266: load-test-plan.md のRPS記述を修正し、300人が5分間に1〜2リクエストを送る前提では平均約1〜2
req/sとして計算する。50〜100
req/sを維持する場合は、数秒以内の集中バーストなど具体的な時間窓と根拠を明示し、DBクエリ量およびVU計画の前提も整合させる。
- Line 327: 明確化する必要があるのは、S2の1
VU・60秒サイクルにおける操作確率モデルです。各エンドポイント操作を排他的な分岐として合計100%になるよう確率を定義するか、独立実行として1分あたりの期待操作回数を明記し、GET
/shift-cards、GET /shifts/tasks/...、レスキュー系、タスク系、POST /rescues、POST
/reviewsの実行条件と回数を再現可能な形に書き直してください。
- Around line 228-230: Clarify the load-test plan that the isolated postgres:18
setup provides only an “API implementation + isolated DB” baseline. Explicitly
state that its results must not be generalized to the production Patroni
cluster, whose hardware, configuration, and shared-resource contention are not
reproduced, while preserving the policy of excluding the shared production
database from load tests.
- Line 449: Update the RESCUE_GAS_URL HTTPS stub setup in the load-test plan to
install a dedicated trusted CA in the test container or configure the HTTP
client’s RootCAs for the self-signed certificate. Ensure POST /rescues succeeds
without TLS errors, and do not use InsecureSkipVerify.
- Line 138: load-test-plan.md
のエンドポイント内訳を表の分類と一致させてください。web_signin・web_signup・web_signoutをadmin(凍結)に含め、GET
/tasksをmobile側に数える前提で、adminを30ルート、デッドルートを27ルートとして本文の集計と説明を更新してください。
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 9ae526f5-ac8c-4695-81c8-25e49f9bde74
📒 Files selected for processing (1)
docs/development/load-test-plan.md
- 本番DB内部IPアドレスの記載を削除し共有Patroniクラスタとのみ記載 - エンドポイント集計のadmin(凍結)/デッドルート数の入れ替わりを修正(30/27) - 隔離DBの試験結果を本番クラスタへ一般化しない旨を明記 - 300人×5分のRPS試算を修正し、クエリ増幅率とバースト幅の前提を明示 - S2シナリオの操作確率を独立試行として明確化(合計164%の曖昧さを解消) - RESCUE_GAS_URLスタブのTLS検証(信頼済みCA導入)の注意点を追加 - 作成日の表記を修正
GM・FinanSuはMySQL側(SeeFTはPostgres側)で接続プールは別物であり、 「接続上限の共有」という説明は不正確だった。実際のリスクはMySQL Server・ PostgreSQL・Patroni・etcdが同じ3台の物理ノード上で同居している点にあり、 既知のMySQLスワップ枯渇インシデントを実例として明記した。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
対応Issue
resolve #434
概要
45th 本番前の API 負荷試験に向けた事前調査と試験計画(ドラフト・未実行)を
docs/development/load-test-plan.mdとして追加します。NUTFes Bingo 負荷試験報告書の方法論(原因切り分け、内部直結 vs 公開URL経由の比較、p95/p99 での pass/fail 基準)を踏襲しています。主な内容:
調査で判明した試験計画外のトピック(Access-Token ヘッダ欠落時の panic、
POST /request_shiftsのデッド化、mobile 静的配信のシングルスレッド問題など)は文書内のリスク・issue 提案節に記録しています。画面スクリーンショット等
テスト項目
ファイル:行番号引用が実コードと一致していること(スポットチェックで可)api/lib/router/router.goの全ルート +/swagger/*を網羅していること備考
試験の実行は本 PR のスコープ外です。マージ後、文書 7 章の提案に基づき後続 issue を起票してから着手します。
Summary by CodeRabbit