Jellyfinのキャッシュを解説:ウォームデータが繰り返しのリクエストを高速化する理由

エヴァ・ウォンテクニカルライター であり ZimaSpaceの常駐ティンカーでもあります。 生涯のオタクであり、 ホームラボとオープンソースソフトウェアに情熱を持っています。彼女は複雑な技術的概念をわかりやすく、 実践的なガイドに翻訳することを専門としています。エヴァはセルフホスティングは楽しくあるべきで、怖がるものではないと信じています。彼女のチュートリアルを通じて、コミュニティが ハードウェアのセットアップを解明する手助けをしています。初めてのNAS構築からDockerコンテナの習得まで。

Jellyfinのデータがウォームな状態になると、ストレージへのアクセスを避けられるため、繰り返し発生するリクエストが速くなることがあります。ただし、その効果はデータの再利用状況、メモリーの圧迫、実際のボトルネックによって異なります。

ライブラリーを最初に開くときは、データベースのページ、アートワーク、ディレクトリーデータをストレージから取得する場合があります。一方、次のリクエストでは、そのワーキングセットの一部が再利用されます。これにより、ハードウェアの容量を変えなくてもサーバーが高速になったように感じられます。キャッシュの再利用が実際のアップグレードに関する誤った主張にならないよう、コールド状態とウォーム状態は分けて比較してください。

コールド実行とウォーム実行では測定できる内容が異なる

コールド実行では、状態を取得してワーキングセットを構築するコストを測定します。ウォーム実行では、利用するページがメモリー上に残っている状態で、繰り返し処理を行った場合の挙動を測定します。両者を平均すると、改善がストレージアクセスの回避によるものなのか、サービスの処理経路そのものに実際の変化があったのかが分からなくなります。

コールドおよびウォームベンチマークの手順では、再起動後の最初の実行と繰り返し実行を分けるため、比較結果を正しく解釈できます。

どちらの結果も重要です。コールド状態は初回利用時の応答性を示し、ウォーム状態はセッション中に繰り返し閲覧または再生する場合の挙動を示します。

メタデータのリクエストは長時間の読み取りより大きな恩恵を受ける

ポスターのグリッド表示、検索、ライブラリーページでは、小さなデータベースファイルや画像ファイルを再利用するため、キャッシュがウォームな状態だと多くの小さな待ち時間をなくせます。長時間のシーケンシャルなメディアストリームでは、ディスクがすでに効率よくデータを提供している場合、差が小さくなることがあります。

キャッシュの影響を受けやすいライブラリー操作を比較するときは、ストレージのレイテンシーとスループットを分けて測定してください。

ナビゲーションは改善するのにストリームの配信が改善しない場合、ウォームなデータが属しているのはメディア経路ではなく、アプリケーション状態の処理経路です。

バックグラウンドジョブは有用なワーキングセットを追い出すことがある

スキャン、サムネイルの生成、バックアップ、その他のコンテナーは、繰り返しリクエストの間にメモリーやストレージキューを消費することがあります。競合するワークロードを一定に保つか、テストに明示的に含めている場合にのみ、ウォーム状態での結果には意味があります。

複数アプリケーションのリソースモデルで示される、管理されたベンチマークと通常の高負荷な時間帯との違いを使い分けてください。

スケジュールされたジョブが実行されるたびにキャッシュの効果が消えるなら、それはワークロード間の相互作用であり、Jellyfinの容量が予測不能であることの証明ではありません。

ウォームなデータが役に立たなくなる場合

ワーキングセットが利用可能なメモリー容量を超えた場合、リクエストで同じデータが再利用されない場合、またはCPU、ネットワーク、トランスコード容量のいずれかがすでに制限要因になっている場合、キャッシュがウォームな状態でも効果はありません。

変更を加えるたびに使用率と飽和度を測定し、コールドパスとウォームパスの合格基準は分けて管理してください。

繰り返し実行するケースでユーザーが認識できる症状に変化がなくなったら、キャッシュの配置の最適化を止めてください。次の測定対象を、依然として飽和しているリソースに移します。

テック&AIハブ

もっと読む

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.