HTMLページにデータURIを含める場合、ASCII、UTF-8、またはbase64を使用するのが最適ですか?
これらのいずれかとして表現できるSVGファイルに使用しています。
UTF-8(URIエンコード後)は、非圧縮の場合でもbase64よりも少し小さいですが、base64を使用することには他の利点(CPUパフォーマンスなど)がありますか?
HTMLページにデータURIを含める場合、ASCII、UTF-8、またはbase64を使用するのが最適ですか?
これらのいずれかとして表現できるSVGファイルに使用しています。
UTF-8(URIエンコード後)は、非圧縮の場合でもbase64よりも少し小さいですが、base64を使用することには他の利点(CPUパフォーマンスなど)がありますか?
私はこれに関連するいくつかのテストを行っていました。フロントエンドに関しては、レンダリングする前にデコードする必要があるbase64を除けば、ほとんど違いはないと思います。サーバー側では、ファイルが小さいほど、処理するデータが少なくなり、使用されるCPUが少なくなります。これにより、UTF-8が最もCPUを集中的に使用しないサーバー側になると思います。
いくつかの半関連のメモ:
ファイルサイズに関しては、サーバーがgzipで圧縮されると、svgがpngよりも優先されます。
サーバー側のgzipをオンにしたために、CPUに小さなヒットが発生したことを読みました。しかし、より少ないデータを処理する必要があることによるCPUの利益は、各ファイルをgzipで圧縮する必要があることを意味します。
SVGは、png、jpg、gif、bmpなどよりもレンダリングにプロセッサを集中的に使用します。ビットマップはレンダリングするだけです。SVGを計算し、ラスタライズしてからレンダリングする必要があります。多くのまたは複雑なsvgをアニメーション化するときに注意する必要があるもの。
私が見つけたいくつかの統計