メモリを使用してLinuxでIOをキャッシュする方法はありますか?

メモリを使用してLinuxでIOをキャッシュする方法はありますか?

私のサーバーにはメモリが多すぎます。ただし、IOの量(毎回非常に小さい)は非常に高いです。

メモリの一部を使用して仮想ドライブを作成する方法はありますか?

SSDも使えることに気づきましたが、値段が高価です。

スピードとスケールが必要です。したがって、記憶だけに頼るだけでは十分ではありません。頻繁にアクセスしないデータはhdiskに配置する必要があります。

ベストアンサー1

使用tmpfs。通常、/dev/shmRAM全体の1/2ベースサイズでインストールされます。利点は、メモリに何かを入れるまでシステムが通常の目的でメモリを使用できることです(動的に予約されています)。デフォルト設定を少し調整したい場合があります。私は個人的に/etc/fstabに以下を持っています:

tmpfs  /dev/shm  tmpfs  defaults,size=16m   0   0
tmpfs  /free     tmpfs  defaults,size=66%   0   0

これは2つのことを行います。

  1. /dev/shm/これを使用したいアプリケーションには、かなり小さい(16MB)tmpfsをインストールしてください。エラーによる偶発的なメモリの浪費を防ぐために、サイズが制限されます。

  2. 使用可能なRAMの3分の2にtmpfsをマウントします/free

ファイルシステムブロックサイズはメモリページサイズと同じです。メモリページサイズの大きいアーキテクチャ(PowerPCやItaniumなど)を使用している場合は、空のファイルでもページ全体を占有します。これらのオーバーヘッドは、大きなファイルを作成し、より小さなブロックを持つ「一般」ファイルシステムを使用してフォーマットし(たとえば、XFSは512Bほど小さいブロックを使用できます)、ループにマウントすることによって合理的に削減できます。 。

SSDの場合、RAMよりはるかに遅く、とにかくキャッシュされ、削除サイクル数が制限されているため、RAMが十分な場合に使用するかどうかが問題です。ところで、さらにハードウェアRAMドライバ

おすすめ記事