コンテンツにスキップ

API 結果のキャッシュ

このページでは、API 結果(API がレスポンスとして返す JSON データや、そこから得られるアバター画像)をキャッシュして利用する際の指針を説明します。以下の課題を解決するために、キャッシュの実装は重要になります。

課題 解決策
API接続に伴うレイテンシ低下の回避 レスポンス(JSON)のキャッシュ
APIの割り当てを超過した利用の回避 レスポンス(JSON)のキャッシュ
アクティブでないユーザがMAUに含まれてしまうことの回避 画像ファイルのキャッシュ

Info

キャッシュのためのキャッシュサーバやファイルストレージは自社サーバ側に準備する必要があります。

Info

Webhook を利用すれば、アバターの更新通知を受け取って画像を更新することもできます。Webhook の利用も検討してください。

レスポンス(JSON)のキャッシュ

API がレスポンスとして返す JSON データをキャッシュして一定期間再利用します。通常、API は常に最新のデータを返しますが、自社アプリににおいて更新遅延を許容できるケースでは、キャッシュを利用できます。

以下の API は、レスポンスを最大10分間自社サーバ側にキャッシュして利用できます。

Info

Items API は、パラメータに avatarId を指定した場合の結果はキャッシュできません。

Info

アクセス数が割り当てに到達する水準の場合、CDN によるキャッシュを適用させていただくことがあります。この場合、API のレスポンスが最新データより数秒遅延することがあります。

キャッシュする範囲

レスポンス(JSON)の全てをキャッシュすることも、アバター画像URLのみなど1部をキャッシュすることもできます。どちらの場合も、キャッシュ期間を10分以下に設定してください。

アバター画像URLのキャッシュ

アバター画像URLについては、特別な理由がない限りキャッシュ期間を10秒以内に設定します。10秒を超えてキャッシュする場合、着せ替えたアバターがなかなか自社アプリに反映されず、エンドユーザのUXを損なう可能性があります。

アバター画像ファイルのキャッシュ

アクティブでないユーザ(自社アプリの利用を停止しているユーザ)のアバター画像を、API のアクセスなしに利用したいケースがあります。この場合、アバター画像ファイルそのものを自社のストレージにキャッシュして利用できます。


最終更新日: 2021-05-18