(Translated by https://www.hiragana.jp/)
FirefoxでYoutube見続けるとSSDが早死にする問題とその対処法

FirefoxでYoutubeつづけるとSSDが早死はやじににする問題もんだいとその対処たいしょほう

Firefoxのキャッシュのいをていたら問題もんだいつけたので対処たいしょ方法ほうほう紹介しょうかいします。

FirefoxでYoutubeをつづけるとどうなるか

タスクマネージャをひらいてFirefoxでYoutubeをてみると、おかしいことがわかります。

動画どうがているだけなのにSSDへのみが連続れんぞくして発生はっせいするのです。

ためしに後述こうじゅつのabout:configでbrowser.cache.disk.parent_directoryでキャッシュの位置いちをUSBメモリなどにしてみるとよくわかります。

またキャッシュされた内容ないようはアドレスバーにabout:cacheと入力にゅうりょくすると確認かくにんできます。

そしてわかったこと。

なんとFirefoxはYoutube動画どうがをすべてディスクキャッシュとしてためんでいるのです。

動画どうがなんてなんることはすくないのでキャッシュする意味いみすくないはずです。

これではSSDのみが延々えんえん発生はっせいし、SSDの寿命じゅみょう影響えいきょうそうです。

Firefoxのキャッシュの仕組しく

アドレスバーにabout:configと入力にゅうりょくすると設定せってい変更へんこう出来できます。

検索けんさくでcacheとむとキャッシュにかんする設定せっています。

今回こんかい問題もんだいかかわる設定せってい以下いかとおり。

設定せってい 説明せつめい
browser.cache.disk.enable ディスクキャッシュを有効ゆうこうにするかどうか
browser.cache.disk.capacity ディスクキャッシュサイズKB(smart_sizeがdisableのとき有効ゆうこう
browser.cache.disk.smart_size.enabled ディスクキャッシュをディスク容量ようりょうから自動じどう設定せっていする
browser.cache.disk.max_entry_size ディスクキャッシュするコンテンツの最大さいだいサイズKB
browser.cache.disk.content_type_media_limit メディアデータを格納かくのうする最大さいだい
browser.cache.disk.parent_directory キャッシュフォルダへのフルパス(よう追加ついか
browser.cache.memory.enable メモリキャッシュを有効ゆうこうにするかどうか
browser.cache.memory.capacity メモリキャッシュサイズKB
browser.cache.memory.max_entry_size メモリキャッシュする最大さいだいサイズKB

問題もんだいは、Youtubeのビデオはチャンクというコマれになっており、メディアデータとして認識にんしきされていないことと、browser.cache.disk.capacityがもともとおおきすぎる(51200=51.2MB!)ことです。

これによりYoutube動画どうがのチャンクがもれなくディスクキャッシュされてしまう、というわけですね。

またbrowser.cache.disk.enableをfalseにしてディスクキャッシュを無効むこうにしたとしてもbrowser.cache.memory.max_entry_sizeが5MBあるのでメモリキャッシュも動画どうがデータですぐにいつぶされてしまいます。

ちなみにFirefoxはディスクキャッシュが有効ゆうこう場合ばあい優先ゆうせんしてディスクキャッシュに記録きろくします。セッションキャッシュなど有効ゆうこう期間きかんみじかときだけメモリにキャッシュします。

なのでメモリキャッシュは実際じっさいはほとんど使つかわれません。

FirefoxでYoutubeつづけるとSSDが早死はやじににする問題もんだい対処たいしょほう

さて、対処たいしょほう紹介しょうかいします。

about:configをひらいて以下いか項目こうもくを128にします。

browser.cache.disk.max_entry_size

これはディスクキャッシュするコンテンツの最大さいだいサイズKBで、デフォルトでは51.2MBになっています。Youtubeの動画どうがデータのチャンクは128KBはかならえるので、それ以下いかのJavascriptやHTMLや画像がぞうデータはキャッシュされ、動画どうがデータは無事ぶじキャッシュされなくなる、というわけです。

ちなみにこうしても128KBをえるデータはこう不幸ふこうかメモリキャッシュにははいらないのでメモリキャッシュをいつぶす心配しんぱいもありません。

Firefoxのキャッシュフォルダを変更へんこうするには

うえのエントリの

browser.cache.disk.parent_directoryのキャッシュフォルダへのフルパスを追加ついかすればFirefoxのキャッシュフォルダを変更へんこうできます。

たとえばTドライブにUSBのポータブルSSDをんでキャッシュ専用せんようにしてしまったとしたら

browser.cache.disk.parent_directoryはT:\のようなかんじに設定せっていすればOKでしょう。

C:のSSD全体ぜんたい寿命じゅみょうにするなら、システムの設定せってい環境かんきょう変数へんすうのTEMPとTMPもうえのテンポラリようドライブにしておけば頻度ひんどおさえることができます。

ちなみにこの設定せっていはFirefoxのさい起動きどう必要ひつようとなります。

まとめ

ということでFirefoxでYoutubeつづけるとSSDが早死はやじににする問題もんだい対処たいしょほうでした。

歴史れきしあるソフトなのでネット回線かいせん非常ひじょうにボトルネックだった時代じだいから設定せっていがれています。いまとなってはHDDディスクキャッシュよりひかり回線かいせんほうはや場合ばあいもありますね。

(ちなみに2018ねんのアップデートでRace Cache With Network=RCWNという機能きのう追加ついかされ、スピンアップ時間じかんなどでおそ場合ばあいそなえキャッシュがある場合ばあいでもネットワークリクエストをしてはやしゃちにする仕組しくみが導入どうにゅうされています。これはabout:configのnetwork.http.rcwn.enabledをfalseにすることでることもできます。したがえりょう回線かいせん場合ばあいはこちらのほうがよさそうですね)

余談よだん

じつはそもそもSSDはみがおおいとこわれやすいのか?という問題もんだいと、みを分散ぶんさんするウェアレベリングの効果こうかはないのではないのか?という議論ぎろんがあります。

これは、経験けいけんてきもうげますとSSDはみがおおいと個体こたいによってはだんだんこわれますが、HDDとちがではほとんどかんじられません。あとひとつのブロックに集中しゅうちゅうしてかないようにずらしていくウェアレベリングは一定いってい効果こうかはあります。

というのは、わたし過去かこにメーカーでNANDフラッシュのウェアレベリングドライバをいていたからわらい

SSDは物理ぶつりブロックレベルでみてみると、じつ納入のうにゅうされた時点じてんですでにいくつか物理ぶつりブロックがこわれている場合ばあいがあるのです。このかくりつはメーカーによってされていてドライバはそれを前提ぜんてい出荷しゅっかにそれらのブロックをかくします。ちょうど液晶えきしょうのドットけみたいなものですね。

で、このこわれやすさはおな型番かたばんのフラッシュでも個体こたいによってもかなりわってきます。で、ずっと使つかったメモリの物理ぶつりブロックのマップをるとブロックがんでけになっているのがわかります。

でもこれはユーザーからみると、そのぶん余分よぶん用意よういされたリザーブ領域りょういきがあてがわれるので、まったこわれていることが認識にんしきできません。やく領域りょういきがなくなった場合ばあいでもだんだん容量ようりょうっていくだけで、HDDのようにファイルシステムがあつか不良ふりょうセクタとしてあらわれるわけではないのです。

あとウェアレベリングはあくまで、局所きょくしょてきなデータのき(ひとつのファイルをいてしてをかえすこと)をするような場合ばあい物理ぶつりブロックがかたよらないようにする仕組しくみなので、ネットでかける、「ドライブ全体ぜんたいなんかえきしたけどウェアレベリングの効果こうかはなかったよ」というのはそもそもウェアレベリングの目的もくてきちがえているようです。

ということで余談よだんでした。あくまでこれは過去かこはなしなのとNANDフラッシュの個体こたい設計せっけいによるはなしなので、現在げんざいではたしかにここまでシビアではないかもしれませんけどね。

この記事きじひとがよくんでいる記事きじ

トップページ

節約せつやくテクノロジ > FirefoxでYoutubeつづけるとSSDが早死はやじににする問題もんだいとその対処たいしょほう