メモリの圧縮により、メモリ使用量が高く感じられることはありますか?

メモリの圧縮により、メモリ使用量が高く感じられることはありますか?

これは少し難しい話ですが、現在、Docker 化された Java アプリケーションの 1 つでいくつかの問題が発生しています。スタックオーバーロウの質問

Docker のメモリ制限を 2GB に設定しましたが、これは Java アプリケーションが使用できる量をはるかに超えているため、この問題の考えられる原因を探しています。

メモリのデフラグ/圧縮中に、システムがそれらの操作を実行しているアプリケーション(割り当てられたメモリ上)のメモリ使用量が高いと報告し、それによって docker の OOM キラーがトリガーされる可能性はありますか?

EC2サーバーの1つに関する詳細情報

cat /proc/pagetypeinfo

Page block order: 9
Pages per block:  512

Free pages count per migrate type at order       0      1      2      3      4      5      6      7      8      9     10
Node    0, zone      DMA, type    Unmovable      1      0      0      1      2      1      1      0      1      0      0
Node    0, zone      DMA, type      Movable      0      0      0      0      0      0      0      0      0      1      3
Node    0, zone      DMA, type  Reclaimable      0      0      0      0      0      0      0      0      0      0      0
Node    0, zone      DMA, type   HighAtomic      0      0      0      0      0      0      0      0      0      0      0
Node    0, zone      DMA, type      Isolate      0      0      0      0      0      0      0      0      0      0      0
Node    0, zone    DMA32, type    Unmovable   2160   1450    509    358     72      0      0      0      0      0      0
Node    0, zone    DMA32, type      Movable  39753  18110   3832    317     88     18      2      0      0      0      0
Node    0, zone    DMA32, type  Reclaimable    479    970      7      6      3      0      1      0      0      0      0
Node    0, zone    DMA32, type   HighAtomic      0      0      0      0      0      0      0      0      0      0      0
Node    0, zone    DMA32, type      Isolate      0      0      0      0      0      0      0      0      0      0      0
Node    0, zone   Normal, type    Unmovable     72    410    350      0      0      0      0      0      0      0      0
Node    0, zone   Normal, type      Movable 132228  61046   1635      0      0      0      0      0      0      0      0
Node    0, zone   Normal, type  Reclaimable      0      2      7      1      0      0      0      0      0      0      0
Node    0, zone   Normal, type   HighAtomic      2      0     15     11      7      2      0      0      0      0      0
Node    0, zone   Normal, type      Isolate      0      0      0      0      0      0      0      0      0      0      0

Number of blocks type     Unmovable      Movable  Reclaimable   HighAtomic      Isolate
Node 0, zone      DMA            1            7            0            0            0
Node 0, zone    DMA32           59         1391           78            0            0
Node 0, zone   Normal          448         5888          127            1            0

cat /proc/sys/vm/extfrag_threshold

500

cat /sys/kernel/debug/extfrag/extfrag_index

Node 0, zone      DMA -1.000 -1.000 -1.000 -1.000 -1.000 -1.000 -1.000 -1.000 -1.000 -1.000 -1.000
Node 0, zone    DMA32 -1.000 -1.000 -1.000 -1.000 -1.000 -1.000 -1.000 0.988 0.994 0.997 0.999
Node 0, zone   Normal -1.000 -1.000 -1.000 -1.000 -1.000 -1.000 0.979 0.990 0.995 0.998 0.999

無料 -h

    total        used        free      shared  buff/cache   available
Mem:            15G         11G        1.5G        1.2M        2.4G        3.7G
Swap:          4.0G        907M        3.1G

この問題は、実稼働サーバー(ほぼ 1 年間稼働)でのみ発生しており、下位環境は毎週末停止しており、これまでこの問題を手動で引き起こすことはできませんでした。それでも、この問題が発生する可能性が大幅に低くなることを期待して、来週サーバーの交換を試みる予定です。

Linux のメモリ管理に関しては私は専門家ではないので、これが根本的な原因である可能性は低いので、可能性は低いことは承知していますが、答えを知りたい質問です。

関連情報