ファイルストアからのデータダウンロードはAPI経由とHTTPS経由の二つがあります。同じ画像があった場合、どちらが速いのか、そして相違点についてまとめてみました。
速度について
まず速度についてです。
API | HTTPS |
---|---|
24.58 | 32.58 |
20.28 | 13.82 |
8.71 | 8.39 |
13.84 | 14.10 |
ネットワークの状態によって安定していないのですが、一概にHTTPSの方が高速という訳ではないようです。APIの方が速い場合も多数あります。ただしHTTPSの方が利点があることも多いです。
eTagがある
今回はキャッシュを消しながら試しましたが、本来であればHTTPSアクセスの場合はeTagが使われます。その結果、キャッシュが有効活用されます。そのため、同じWebブラウザで同じ画像を表示する場合は高速になるはずです。
eTagはWebブラウザごとに保存されるものなので、異なるクライアントではキャッシュが使われません。そのため、全クライアントに対して表示が高速化される訳ではないので注意してください。
OPTIONSがある
APIの場合、データをダウンロードする前にOPTIONSヘッダーによるアクセスが行われます。HTTPSと比べてネットワークアクセスが一つ多いのが欠点です。これは高速に行われますが、それでも多数の画像を表示する場合には懸念点になるかも知れません。
HTTPSはストリーミングで表示できる
これは意外なポイントですが、Webブラウザで画像を表示する場合はimgタグを使うことが多いはずです。そのsrc要素にHTTPSのURLを指定した場合、データをダウンロードしながら徐々に表示されていきます。API経由の場合はすべてのデータをダウンロード後、一気に表示されます。
一気に表示される方がアプリっぽいとも言えますが、ユーザストレスとしては徐々に表示されてくれた方が安心感がありそうです。
まとめ
HTTPSとAPI経由はネットワーク速度という意味ではほとんど変わりませんが、利用するデータや表示回数などによって選択肢が変わってきます。UXを最適化できる方法を選択してください。