この記事は1年以上前の古い記事です。現状に即していない記述の場合があります。あらかじめご了承ください。
このサーバーのレスポンスが遅い

nogajun
_ このサーバー、結構ガタがきてて次の入れ替えマシンもあるのだけれど、いかんせん時間がなくて先送りにしております。でも、そろそろ本当に入れ替えないとダメかな。
_ Zramを有効にして少ないメモリを乗り切ろう
現在は、zram-toolsというパッケージがあり、パッケージをインストールして再起動するだけでzramが利用できます。以下は過去の記録で行う必要はありません。
- 元ネタ: ZRam - Debian Wiki: https://wiki.debian.org/ZRam
「メモリが少なくて困る」というならメモリ買ったりマシン買ったりすればいいのですが、そうもできない事情もあります。そんなときはZramで乗り切りましょう。 ということでDebian WheezyでZramを有効にする設定です。内容は、Debian Wikiそのままです。
まず、geditなど適当なエディタに下のZram組み込みスクリプトをコピペして、zramという名前で保存します。
### BEGIN INIT INFO
# Provides: zram
# Required-Start: $local_fs
# Required-Stop: $local_fs
# Default-Start: S
# Default-Stop: 0 1 6
# Short-Description: Use compressed RAM as in-memory swap
# Description: Use compressed RAM as in-memory swap
### END INIT INFO
# Author: Antonio Galea <antonio.galea@gmail.com>
# Thanks to Przemysław Tomczyk for suggesting swapoff parallelization
FRACTION=75
MEMORY=`perl -ne'/^MemTotal:\s+(\d+)/ && print $1*1024;' < /proc/meminfo`
CPUS=`grep -c processor /proc/cpuinfo`
SIZE=$(( MEMORY * FRACTION / 100 / CPUS ))
case "$1" in
"start")
param=`modinfo zram|grep num_devices|cut -f2 -d:|tr -d ' '`
modprobe zram $param=$CPUS
for n in `seq $CPUS`; do
i=$((n - 1))
echo $SIZE > /sys/block/zram$i/disksize
mkswap /dev/zram$i
swapon /dev/zram$i -p 10
done
;;
"stop")
for n in `seq $CPUS`; do
i=$((n - 1))
swapoff /dev/zram$i && echo "disabled disk $n of $CPUS" &
done
wait
sleep .5
modprobe -r zram
;;
*)
echo "Usage: `basename $0` (start | stop)"
exit 1
;;
esac
組み込みスクリプトを/etc/init.d以下に移動して有効にします。
$ sudo cp zram /etc/init.d/
$ sudo chmod 755 /etc/init.d/zram
$ sudo /sbin/insserv zram
$ sudo /etc/init.d/zram start
こんな感じで追加されてればOKです。
$ sudo /sbin/swapon -s
Filename Type Size Used Priority
/dev/sda5 partition 392188 0 -1
/dev/zram0 partition 385792 0 10
メモリの割り当てを変更するならスクリプトのFRACTIONを調整するといいです。