簡潔な回答
毎月生成する画像の量が非常に多く、API のレスポンスレイテンシーを 360ms 未満にしたい場合、別のルートに切り替えても改善は限定的な可能性があります。というのも、代替ノードの多くは海外にホストされており、追加のネットワーク遅延が発生する場合があるためです。 まず、元のルート URL を次のように置き換えてテストしてください。https://api.apiyi.com/v1/images/generations を http://api.apiyi.com:16888/v1/images/generations に置き換えます。
クライアント最適化
一部のAPIゲートウェイでは、持続接続またはストリーミング接続中にHTTP/2の動作が不安定になることがあり、転送の中断や追加の再試行が発生する場合があります。カスタムHTTPクライアントを次のように設定してください。- HTTP/1.1 を強制し、HTTP/2を無効化する
- 接続プールとKeep-Aliveを有効にして、リクエストごとに新しい接続を作成しないようにする
- 500ms の総タイムアウトを使うのではなく、通常の画像生成時間をカバーできるように読み取りタイムアウトを長くする
- まれなネットワーク障害を、バックオフ付きで限定回数だけ再試行する
500ms は、ネットワークオーバーヘッドまたはタスク送信の目安として扱い、画像生成完了時間の保証値としては扱わないでください。 実際のレイテンシーは、クライアントの所在地、ISP のルーティング、同時実行数、選択した画像モデル、上流側の処理にも依存します。本番相当の同時実行数でテストを実施し、展開前に P95 と P99 のレイテンシーを評価してください。
推奨されるトラブルシューティングの順序
1
HTTP エンドポイントに切り替える
ルート URL を
http://api.apiyi.com:16888に置き換え、既存の API パスと認証方式はそのままにします。2
HTTP/2 を無効化する
クライアントで HTTP/1.1 を強制し、接続の再利用を有効にします。
3
タイムアウトとリトライを調整する
接続タイムアウトと読み取りタイムアウトを別々に設定します。読み取りタイムアウトは通常の画像処理時間を十分にカバーする必要があります。
4
同時実行数のテストを実施する
本番環境に近い同時実行数でテストし、P50、P95、P99 のレイテンシと失敗率を監視します。