クライアントでは、HTML、CSS、JavaScriptコード、画像や動画などのアセットは、通常はメインRAMのような種類のメモリに格納されます。このメモリは通常、タブを閉じるか、タブが非アクティブになるとすぐに再要求されます。
イメージなどのアセットをデコードした後、GPUメモリにコピーしてより高速にレンダリングすることができます。 3Dコードは、グラフィックスカードの命令に変換され、グラフィックスカード上に一時的に存在することもあります。
メモリが逼迫している場合、オペレーティングシステムはメモリをスワップしてディスクに書き出す可能性があります。詳細はvirtual memoryをご覧ください。
ブラウザにはディスクにキャッシュがあります。これは通常、最初のレンダリングでは使用されません(ページをレンダリングする前にディスクを待つ必要があるため)。プログラマは、HTTP Cache-Control
とother headersを設定できます。キャッシュファイルをいつ削除するかは、ブラウザによって異なります。通常、古くなったり古いキャッシュサイズに達したり、ユーザーが手作業で削除したりすると、それらは削除されます。ブラウザーとユーザーは、キャッシュが実行されているかどうか、キャッシュがどの程度正確に実行されているかを設定します。
Proxy serversもキャッシュできます。一部の大企業では、インターネットのトラフィックを削減して制御するために、それらを使用していますこの場合、コードはサーバーからプロキシにダウンロードされ、プロキシから各クライアントにダウンロードされます。
HTML5 offline web applicationsは通常、より長い時間ディスクに保存されます。ブラウザのキャッシュとは異なり、オフラインのWebアプリケーションはブラウザによって削除されることは想定されていませんが、実際のブラウザは異なる動作をする可能性があります。ユーザーがオフラインWebアプリケーションのURLを入力すると、新しいバージョンの要求が送信される前にディスクからロードされます。対照的に、通常のブラウザキャッシュでは、リソースはディスク上に存在するか(HTTPヘッダーが正しくない場合は失効します)、またはダウンロードされます。
Service workersは、オフラインWebアプリケーションと同様に、HTTP要求を傍受するためにWebサイトによってインストールすることもできます。ディスクにlocalStorageというコード/アセットを格納して読み込むことができます。要約すれば、コードが格納される場所は、多くの要因に依存する。現在のコンピューティングアーキテクチャの性質により、コードはしばらくの間メインメモリに格納されます。幸いにも、あなたのWebアプリケーションは、実際にコードがどこにあるかを気にする必要はほとんどありません。ブラウザは自動的にそれを利用できるようにします。それにもかかわらず、キャッシュヘッダーを構成し、オフラインWebアプリケーションまたはサービスワーカーを使用することで、パフォーマンスが向上し、インターネットが利用できない場合でもWebサイトが利用できるようになります。
実際のWebサイトにキャッシュされているリソース(少なくともセットアップ時)を知りたい場合は、Webブラウザの開発ツール(多くのシステムでF12でアクセス可能)を使用できます。
注どのキャッシュから(クロームは、メモリ内の1つのディスク上の1持っている)と言うコラムサイズ、いかなる場合:たとえば、ここにChromeで有効になってキャッシュを搭載したこの非常にページですファイルが来ています。
ありがとうございました。あなたが「YouTube」に行ってビデオを観るのであれば、それを少しだけ拡張するだけです。動画も一時的にダウンロードされていますか? – Bail3y
いいえ、私の知る限り、これらのビデオはストリーミングされ、ローカルシステムに一時ファイルは残されません。 –
すべてのブラウザがファイルシステム上にディレクトリを持っているわけではありません。たとえば、elinksにはキャッシュがありません。また、キャッシュが永久に無効になるように最新のブラウザを構成することもできます。また、通常、シークレット/プライベートブラウジングモードではキャッシュされません(少なくともディスクには格納されません)。 – phihag