パフォーマンス最適化
パフォーマンス最適化
概要
データベースクエリの最適化、フロントエンドのリトライロジック改善、キャッシュ戦略の見直しにより、ページの読み込み速度とレスポンシビリティを大幅に向上させました。
改善内容
N+1クエリの解消
プログラム参加者データの取得時に発生していたN+1クエリ問題を解消しました。個別のユーザー情報取得ループをJOINクエリに置き換えることで、データベースへのアクセス回数を大幅に削減しています。
フロントエンドリトライロジック改善
APIリクエストのエラーハンドリングを改善しました:
4xxクライアントエラー(403 Forbidden等)での不要なリトライを排除
エラーメッセージにHTTPステータスコードを含めることで、より正確なエラー判定が可能に
管理者専用エンドポイントへのアクセス時、権限がない場合は即座にエラーを返す
管理者専用クエリの最適化
管理者専用のAPI呼び出し(招待管理、レビュアー管理、ピッチコールページ等)に対して:
権限のないユーザーからのリクエストを事前にブロック(
enabled: !readOnly)リトライを無効化(
retry: false)適切なキャッシュ有効期間(
staleTime)を設定
キャッシュ戦略の見直し
タブ切り替え時のデータ再取得方法を改善し、removeQueries(キャッシュ完全削除)からinvalidateQueries(バックグラウンド再取得)に変更。タブ切り替え時のちらつきを解消し、よりスムーズな操作感を実現しています。