モバイルの画面の表示に必要な通信を減らす

正解は ア です。 GraphQL(AppSync) は、複数のデータソースから 必要な項目だけを1回の要求で 取得でき、 購読(サブスクリプション) でリアルタイムの更新を受け取れます。 要件 REST(3回の呼び出し) AppSync(GraphQL) 要求の回数 3回 1回 受け取る項目 すべて 必要なものだけ リアルタイムの更新 ポーリング 購読 通信の回数と量を減らし、リアルタイムの更新も受けられる。 不要な項目まで含む大きな応答で、通信の量が増える。 要求の回数と不要な項目は減らず、在庫の最新の値も得られない。 通信の量は減らず、ポーリングで通信と費用が増える。

モバイルアプリの1つの画面を表示するのに、会員・注文・在庫の3つのREST APIを順に呼び、不要な項目まで受け取っている。電波の弱い環境で表示が遅い。さらに、在庫の変化を画面にリアルタイムで反映したい。

最も適切なものを1つ選択してください。

出典AWS非公式・オリジナル問題
ア
AppSyncのGraphQLで必要な項目だけを1回の要求で取得し、購読で在庫の更新を受ける
イ
3つのAPIを1つのLambdaにまとめ、すべての項目を含む大きな応答を1回で返すようにする
ウ
3つのREST APIの応答のすべての項目を、CloudFrontで長時間キャッシュするように設定する
エ
3つのREST APIを並列に呼ぶようにアプリを変え、在庫は1秒ごとにポーリングで取得する