Linux - Tarを抽出すると、サーバーの速度が大幅に遅くなります。

Linux - Tarを抽出すると、サーバーの速度が大幅に遅くなります。

12TBのストレージを備えたWebサーバーがあります(下記の仕様を参照)。 TARで圧縮された大量のcsvファイルをサーバーに移動してから、サーバーから抽出しています。問題は、TARファイルを抽出するとサーバーが非常に遅くなり、ほとんど利用できなくなることです。私は狂気をしないし、通常一度に2-4の抽出を行います。ただし、1 つまたは 2 つだけ実行してもサーバーの速度が大幅に遅くなることがあります。人々がサイトを使用したいと思っている間にTARファイルをアップロードして抽出する予定ですが、今は2つを同時に実行できないので、これは私にとって大きな問題になります。私はLinuxとこのコミュニティに初めて触れました。したがって、より有用な情報を提供できる場合は、お知らせください。この投稿を更新します。

ディスクがボトルネックを起こしていると思いますか?

それでは、tar抽出ディスクの使用量を制限したり、他のすべての優先順位を指定したりできますか?

入出力統計:

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.15    0.56    0.40   14.83    0.00   84.06

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
loop0             0.00         0.00         0.00       1907          2
sda             155.19       787.23      1484.89  604305327 1139862930
sdb             154.49       765.39      1493.48  587544552 1146456242
sdc             153.82       759.91      1485.53  583338594 1140353662
md4            1041.52      1861.40      4425.45 1428880721 3397151904
md3               4.78        46.70        11.08   35850458    8501904
md2               0.00         0.00         0.00       3641         98

トップ:

PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
7194 root      20   0       0      0      0 D   5.0  0.0   0:17.38 
13811 user1  20   0  121272   1620   1464 D   4.3  0.0   0:02.20 tar

サーバー仕様:

Intel Atom C2750、8c/8t - 2.4GHz/2.6GHz、16GB DDR3 ECC 1600MHz

ベストアンサー1

これioniceコマンドは「niceIO用」です。そして、異なるIO優先順位でコマンドを実行するので、ディスクを使用したい他のプロセスに譲歩したり譲歩したりしません。

ionice -c 3 tar xf ...

コマンドは「アイドル」優先順位で実行されるため、tar他の人がディスクを使用したくない場合にのみディスクを使用します。これにより、他のプロセスを妨げないようにすることができます。

この場合、複数の抽出を並列に実行しても大きな利点はありません。 tarファイルは単にデータと一部のヘッダーを連結したものなので、読み書きする以外にやることは多くありません。それ可能これは、他のディスクや一部のSSDを使用している場合に便利です。

おすすめ記事