เชนเซเชธเซเชเชฟเชเช เชชเซเชฐเชฆเชพเชคเชพเชจเชพ เชงเซเชฏเซเชฏเซเชฎเชพเชเชฅเซ เชเช เช
เชเชคเชฟเชฎ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชเชจเซ เชเชเซเช เชเซเชฃเชตเชคเซเชคเชพเชจเซ เชธเซเชตเชพ เชชเซเชฐเชฆเชพเชจ เชเชฐเชตเชพ เชฎเชพเชเซ เชตเชฐเซเชคเชฎเชพเชจ เชธเชพเชงเชจเซเชจเซ เชฎเชนเชคเซเชคเชฎ เชเชชเชฏเซเช เชเชฐเชตเชพเชจเซ เชเซ. เช
เชเชคเชฟเชฎ เชธเชฐเซเชตเชฐเชจเชพ เชธเชเชธเชพเชงเชจเซ เชนเชเชฎเซเชถเชพ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชนเซเชฏ เชเซ, เชชเชฐเชเชคเซ เชนเซเชธเซเช เชเชฐเซเชฒ เชเซเชฒเชพเชฏเชเช เชธเซเชตเชพเชเชจเซ เชธเชเชเซเชฏเชพ, เช
เชจเซ เช
เชฎเชพเชฐเชพ เชเชฟเชธเซเชธเชพเชฎเชพเช เช
เชฎเซ VPS เชตเชฟเชถเซ เชตเชพเชค เชเชฐเซ เชฐเชนเซเชฏเชพ เชเซเช, เชจเซเชเชงเชชเชพเชคเซเชฐ เชฐเซเชคเซ เช
เชฒเช เชนเซเช เชถเชเซ เชเซ. เชเชพเชก เชชเชฐ เชเซเชตเซ เชฐเซเชคเซ เชเชขเชตเซเช เช
เชจเซ เชเช เชนเซเช เชณ เชฌเชฐเซเชเชฐ เชเซเชตเซ เชฐเซเชคเซ เชเชพเชตเซเช เชคเซ เชตเชฟเชถเซ เชตเชพเชเชเซ.
เชจเซเชก เชชเชฐ VPS เชจเซ เชเชตเซ เชฐเซเชคเซ เชธเชเชเซเชเชฟเชค เชเชฐเชตเซเช เชเซ เชเซเชฒเชพเชฏเชเช เชคเซเชจเซ เชฌเชฟเชฒเชเซเชฒ เช เชจเซเชญเชตเชคเชพ เชจเชฅเซ เชคเซ เชเซเชเชชเชฃ เชนเซเชธเซเชเชฟเชเช เชชเซเชฐเชฆเชพเชคเชพเชจเชพ เชเชฐเซเชฅเชฟเช เชชเซเชฐเชญเชพเชตเชจเซ เชตเชงเชพเชฐเชตเชพเชฎเชพเช เชเซเชฌ เชฎเชฆเชฆ เชเชฐเซ เชเซ. เช เชฒเชฌเชคเซเชค, เชเซ เชคเซ เชเชจเซเชเซเชจเชฐเชฅเซ เชญเชฐเซเชฒเซเช เชนเซเชฏ เชคเซ เชธเซเชฎ เชชเชฐ เชจเซเชก เชซเชพเชเชตเซ เชเซเชเช เชจเชนเซเช, เช เชจเซ เชญเชพเชฐเชฎเชพเช เชเซเชเชชเชฃ เชตเชงเชพเชฐเซ เชคเชฐเชค เช เชฌเชงเชพ เชเซเชฐเชพเชนเชเซ เชฆเซเชตเชพเชฐเชพ เช เชจเซเชญเชตเชพเชฏ เชเซ.
เชเช เชจเซเชก เชชเชฐ เชเซเชเชฒเชพ VPS เชนเซเชธเซเช เชเชฐเซ เชถเชเชพเชฏ เชเซ เชคเซ เชเชฃเชพ เชชเชฐเชฟเชฌเชณเซ เชชเชฐ เชเชงเชพเชฐ เชฐเชพเชเซ เชเซ, เชเซเชฎ เชเซ เชธเซเชชเชทเซเช เชเซ:
1. เชจเซเชกเชจเชพ เช เชนเชพเชฐเซเชกเชตเซเชฐเชจเซ เชฒเชพเชเซเชทเชฃเชฟเชเชคเชพเช
2. VPS เชเชฆ
3. VPS เชชเชฐเชจเชพ เชญเชพเชฐเชจเซ เชชเซเชฐเชเซเชคเชฟ
4. เชธเซเชซเซเชเชตเซเชฐ เชคเชเชจเซเชเซ เชเซ เชเซ เชเชจเชคเชพเชจเซ เชเชชเซเชเชฟเชฎเชพเชเช เชเชฐเชตเชพเชฎเชพเช เชฎเชฆเชฆ เชเชฐเซ เชเซ
เช เชเชฟเชธเซเชธเชพเชฎเชพเช, เช
เชฎเซ Virtuozzo เชฎเชพเชเซ Pfcache เชเซเชเชจเซเชฒเซเชเซเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชจเซ เช
เชฎเชพเชฐเซ เช
เชจเซเชญเชต เชถเซเชฐ เชเชฐเซเชถเซเช.
เช
เชฎเซ 6เช เซเช เซ เชถเชพเชเชพเชจเซ เชเชชเชฏเซเช เชเชฐเซเช เชเซเช, เชชเชฐเชเชคเซ เชเซ เชชเชฃ เชเชนเซเชตเชพเชฎเชพเช เชเชตเซเชฏเซเช เชเซ เชคเซ 7เชฎเซ เชฎเชพเชเซ เชชเชฃ เชธเชพเชเซเช เชเซ.
เชนเชเซเชเชคเชฎเชพเช เชคเซ เชธเชฎเชพเชตเซ เชเซ:
1. เชเชฐเซเชจเชฒ เชเซเชก
2. เชฏเซเชเชฐ-เชธเซเชชเซเชธ เชฐเชพเชเซเชทเชธ
3. เชฏเซเชเชฐ-เชธเซเชชเซเชธ เชฏเซเชเชฟเชฒเชฟเชเซเช
เชจเซเชก เชฌเชพเชเซ เชชเชฐ, เช เชฎเซ เชเช เชธเชเชชเซเชฐเซเชฃ เชตเชฟเชญเชพเช เชซเชพเชณเชตเซเช เชเซเช เชเซเชฎเชพเช เชซเชพเชเชฒเซ เชฌเชจเชพเชตเชตเชพเชฎเชพเช เชเชตเชถเซ เชเซเชจเซ เชเชชเชฏเซเช เชจเซเชก เชชเชฐเชจเชพ เชคเชฎเชพเชฎ VPS เชฆเซเชตเชพเชฐเชพ เชธเซเชงเซ เช เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ. เชฌเซเชฒเซเช เชฒเซเชช เชเชชเชเชฐเชฃ เช เชตเชฟเชญเชพเชเชฎเชพเช เชฎเชพเชเชจเซเช เชฅเชฏเซเชฒ เชเซ. เชชเชเซ, เชเซเชฏเชพเชฐเซ เชเชจเซเชเซเชจเชฐ เชถเชฐเซ เชฅเชพเชฏ เชเซ, เชคเซเชฏเชพเชฐเซ เชคเซ เช เชตเชฟเชญเชพเช เชฎเชพเชเซ เชธเชเชฆเชฐเซเชญ เชฎเซเชณเชตเซ เชเซ:
[root@pcs13 ~]# cat /proc/mounts
...
/dev/ploop62124p1 /vz/pfcache ext4 rw,relatime,barrier=1,data=ordered,balloon_ino=12 0 0
...
/dev/ploop22927p1 /vz/root/418 ext4 rw,relatime,barrier=1,data=ordered,balloon_ino=12,pfcache_csum,pfcache=/vz/pfcache 0 0
/dev/ploop29642p1 /vz/root/264 ext4 rw,relatime,barrier=1,data=ordered,balloon_ino=12,pfcache_csum,pfcache=/vz/pfcache 0 0
...
เช เชนเซเช เช เชฎเชพเชฐเชพ เชจเซเชกเซเชธเชฎเชพเชเชฅเซ เชเช เชชเชฐ เชซเชพเชเชฒเซเชจเซ เชธเชเชเซเชฏเชพเชจเชพ เช เชเชฆเชพเชเชฟเชค เชเชเชเชกเชพ เชเซ:
[root@pcs13 ~]# find /vz/pfcache -type f | wc -l
45851
[root@pcs13 ~]# du -sck -h /vz/pfcache
2.4G /vz/pfcache
2.4G total
pfcache เชจเชพ เชธเชฟเชฆเซเชงเชพเชเชค เชจเซเชเซ เชฎเซเชเชฌ เชเซ:
โข เชฏเซเชเชฐ-เชธเซเชชเซเชธ เชกเชฟเชฎเชจ Pfcached เชซเชพเชเชฒเชจเชพ sha-1 เชนเซเชถเชจเซ เช เชซเชพเชเชฒเชจเชพ xattr เชเชเซเชฐเชฟเชฌเซเชฏเซเช เชชเชฐ เชฒเชเซ เชเซ. เชฌเชงเซ เชซเชพเชเชฒเซ เชชเชฐ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชฅเชคเซ เชจเชฅเซ, เชชเชฐเชเชคเซ เชฎเชพเชคเซเชฐ /usr, /bin, /usr/sbin, /sbin, /lib, /lib64 เชกเชฟเชฐเซเชเซเชเชฐเซเชเชฎเชพเช
โข เชธเชเชญเชต เชเซ เชเซ เช เชกเชฟเชฐเซเชเซเชเชฐเซเชเชฎเชพเชเชจเซ เชซเชพเชเชฒเซ "เชถเซเชฐ" เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ เช เชจเซ เชคเซเชจเซ เชเชชเชฏเซเช เชเซเชเชฒเชพเช เชเชจเซเชเซเชจเชฐ เชฆเซเชตเชพเชฐเชพ เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ;
โข Pfcached เชธเชฎเชฏเชพเชเชคเชฐเซ เชเชฐเซเชจเชฒเชฎเชพเชเชฅเซ เชซเชพเชเชฒเซ เชตเชพเชเชเชตเชพเชจเชพ เชเชเชเชกเชพ เชเชเชคเซเชฐ เชเชฐเซ เชเซ, เชคเซเชจเซเช เชตเชฟเชถเซเชฒเซเชทเชฃ เชเชฐเซ เชเซ, เช เชจเซ เชเซ เชคเซเชจเซ เชตเชพเชฐเชเชตเชพเชฐ เชเชชเชฏเซเช เชฅเชคเซ เชนเซเชฏ เชคเซ เชเซเชถเชฎเชพเช เชซเชพเชเชฒเซ เชเชฎเซเชฐเซ เชเซ;
โข เช เชกเชฟเชฐเซเชเซเชเชฐเซเช เช เชฒเช เชนเซเช เชถเชเซ เชเซ เช เชจเซ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชซเชพเชเชฒเซเชฎเชพเช เชเซเช เชตเซเชฒ เชเซ.
โข เชซเชพเชเชฒ เชตเชพเชเชเชคเซ เชตเชเชคเซ, เชคเซ xattr เชตเชฟเชธเซเชคเซเชค เชตเชฟเชถเซเชทเชคเชพเชเชฎเชพเช เชเชฒเซเชฒเซเชเชฟเชค เชนเซเชถ เชงเชฐเชพเชตเซ เชเซ เชเซ เชเซเชฎ เชคเซ เชคเชชเชพเชธเชตเชพเชฎเชพเช เชเชตเซ เชเซ. เชเซ เชคเซเชฎเชพเช เชถเชพเชฎเซเชฒ เชนเซเชฏ, เชคเซ เชเชจเซเชเซเชจเชฐ เชซเชพเชเชฒเชจเซ เชฌเชฆเชฒเซ "เชธเชพเชฎเชพเชจเซเชฏ" เชซเชพเชเชฒ เชเซเชฒเชตเชพเชฎเชพเช เชเชตเซ เชเซ. เช เช เชตเซเชเซ เชเชจเซเชเซเชจเชฐ เชเซเชก เชฆเซเชตเชพเชฐเชพ เชเซเชเชจเชพ เชงเซเชฏเชพเชจ เชตเชฟเชจเชพ เชฅเชพเชฏ เชเซ เช เชจเซ เชเชฐเซเชจเชฒเชฎเชพเช เชเซเชชเชพเชฏเซเชฒ เชเซ;
โข เชซเชพเชเชฒเชฎเชพเช เชฒเชเชคเซ เชตเชเชคเซ, เชนเซเชถ เช เชฎเชพเชจเซเชฏ เชเซ. เชเชฎ, เชเชเชฒเซ เชตเชเชคเซ เชเซเชฏเชพเชฐเซ เชคเชฎเซ เชคเซเชจเซ เชเซเชฒเชถเซ, เชคเซเชฏเชพเชฐเซ เชเชจเซเชเซเชจเชฐ เชซเชพเชเชฒ เชชเซเชคเซ เช เชเซเชฒเชถเซ, เชคเซเชจเซ เชเซเชถ เชจเชนเซเช.
/vz/pfcacheเชฎเชพเชเชฅเซ เชถเซเชฐ เชเชฐเซเชฒเซ เชซเชพเชเชฒเซเชจเซ เชชเซเช เชเซเชถเชฎเชพเช เชฐเชพเชเซเชจเซ, เช เชฎเซ เช เชเซเชถเชฎเชพเช เช เชฌเชเชค เชนเชพเชเชธเชฒ เชเชฐเซเช เชเซเช, เชคเซเชฎเช IOPSเชฎเชพเช เชชเชฃ เชฌเชเชค เชเชฐเซเช เชเซเช. เชกเชฟเชธเซเชเชฎเชพเชเชฅเซ เชฆเชธ เชซเชพเชเชฒเซ เชตเชพเชเชเชตเชพเชจเซ เชฌเชฆเชฒเซ, เช เชฎเซ เชเช เชตเชพเชเชเซเช เชเซเช, เชเซ เชคเชฐเชค เช เชชเซเช เชเซเชถเชฎเชพเช เชเชพเชฏ เชเซ.
struct inode {
...
struct file *i_peer_file;
...
};
struct address_space {
...
struct list_head i_peer_list;
...
}
เชซเชพเชเชฒ เชฎเชพเชเซเชจเซ VMA เชธเซเชเชฟ เชธเชฟเชเชเชฒ เชฐเชนเซ เชเซ (เช เชฎเซ เชฎเซเชฎเชฐเซเชจเซ เชกเชฟเชกเชชเซเชฒเชฟเชเซเช เชเชฐเซเช เชเซเช) เช เชจเซ เชกเชฟเชธเซเชเชฎเชพเชเชฅเซ เชเชฃเซ เชเชเซ เชตเชพเชฐ เชตเชพเชเชเชตเชพเชฎเชพเช เชเชตเซ เชเซ (iops เชธเชพเชเชตเชคเชพ). เช เชฎเชพเชฐเซเช เชธเชพเชฎเชพเชจเซเชฏ เชญเชเชกเซเชณ SSD เชชเชฐ เชธเซเชฅเชฟเชค เชเซ - เชเชกเชชเชฎเชพเช เชตเชงเชพเชฐเชพเชจเซ เชซเชพเชฏเชฆเซ.
/bin/bash เชซเชพเชเชฒเชจเซ เชเซเชถ เชเชฐเชตเชพ เชฎเชพเชเซเชจเซเช เชเชฆเชพเชนเชฐเชฃ:
[root@pcs13 ~]# ls -li /vz/root/2388/bin/bash
524650 -rwxr-xr-x 1 root root 1021112 Oct 7 2018 /vz/root/2388/bin/bash
[root@pcs13 ~]# pfcache dump /vz/root/2388 | grep 524650
8e3aa19fdc42e87659746f6dc8ea3af74ab30362 i:524650 g:1357611108 f:CP
[root@pcs13 ~]# sha1sum /vz/root/2388/bin/bash
8e3aa19fdc42e87659746f6dc8ea3af74ab30362 /vz/root/2388/bin/bash
[root@pcs13 /]# getfattr -ntrusted.pfcache /vz/root/2388/bin/bash
# file: vz/root/2388/bin/bash
trusted.pfcache="8e3aa19fdc42e87659746f6dc8ea3af74ab30362"
[root@pcs13 ~]# sha1sum /vz/pfcache/8e/3aa19fdc42e87659746f6dc8ea3af74ab30362
8e3aa19fdc42e87659746f6dc8ea3af74ab30362 /vz/pfcache/8e/3aa19fdc42e87659746f6dc8ea3af74ab30362
เช
เชฎเซ เชเชชเชฏเซเชเชจเซ เชเชพเชฐเซเชฏเชเซเชทเชฎเชคเชพเชจเซ เชเชฃเชคเชฐเซ เชเชฐเซเช เชเซเช
เช เชธเซเชเซเชฐเชฟเชชเซเช เชจเซเชก เชชเชฐเชจเชพ เชคเชฎเชพเชฎ เชเชจเซเชเซเชจเชฐเชฎเชพเชเชฅเซ เชชเชธเชพเชฐ เชฅเชพเชฏ เชเซ, เชฆเชฐเซเช เชเชจเซเชเซเชจเชฐเชจเซ เชเซเชถเซเชก เชซเชพเชเชฒเซเชจเซ เชเชฃเชคเชฐเซ เชเชฐเซ เชเซ.
[root@pcs16 ~]# /pcs/distr/pfcache-examine.pl
...
Pfcache cache uses 831 MB of memory
Total use of pfcached files in containers is 39837 MB of memory
Pfcache effectiveness: 39006 MB
เชเชฎ, เชฎเซเชฎเชฐเซเชฎเชพเชเชฅเซ เชเชชเชฃเซ เชฒเชเชญเช 40 เชเซเชเชพเชฌเชพเชเชเซเชธ เชซเชพเชเชฒเซเชจเซ เชเชจเซเชเซเชจเชฐเชฎเชพเช เชธเชพเชเชตเซเช เชเซเช; เชคเซ เชเซเชถเชฎเชพเชเชฅเซ เชฒเซเชก เชฅเชถเซ.
เช เชฎเชฟเชเซเชจเชฟเชเชฎ เชตเชงเซ เชธเชพเชฐเซ เชฐเซเชคเซ เชเชพเชฐเซเชฏ เชเชฐเชตเชพ เชฎเชพเชเซ, เชจเซเชก เชชเชฐ เชธเซเชฅเซ เชตเชงเซ "เชธเชฎเชพเชจ" VPS เชฎเซเชเชตเซเช เชเชฐเซเชฐเซ เชเซ. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชคเซ เชเซ เชเซเชฎเชพเช เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ เชชเชพเชธเซ เชฐเซเช เชเชเซเชธเซเชธ เชจเชฅเซ เช เชจเซ เชเซเชจเชพ เชชเชฐ เชเชฎเชพเชตเช เชเชฐเซเชฒ เชเชฎเซเชเชฎเชพเชเชฅเซ เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชเซเช เชตเซเชฒเซเช เชเซ.
เชคเชฎเซ เชฐเซเชชเชฐเซเชเชพ เชซเชพเชเชฒ เชฆเซเชตเชพเชฐเชพ pfcache เชเซเชฏเซเชจ เชเชฐเซ เชถเชเซ เชเซ
/etc/vz/pfcache.conf
MINSIZE, MAXSIZE - เชเซเชถเซเชเช เชฎเชพเชเซ เชจเซเชฏเซเชจเชคเชฎ/เชฎเชนเชคเซเชคเชฎ เชซเชพเชเชฒ เชเชฆ
TIMEOUT - เชเซเชถเซเชเช เชชเซเชฐเชฏเชพเชธเซ เชตเชเซเชเซ เชธเชฎเชฏเชธเชฎเชพเชชเซเชคเชฟ
เชคเชฎเซ เชชเชฐเชฟเชฎเชพเชฃเซเชจเซ เชธเชเชชเซเชฐเซเชฃ เชธเซเชเชฟ เชเซเช เชถเชเซ เชเซ
เชธเซเชฐเซเชธ: www.habr.com