เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชจเชพเชจเซ€ เชซเชพเช‡เชฒเซ‹ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชนเซ‡เช•เซเชธ

เชฒเซ‡เช– เชฎเชพเชŸเซ‡เชจเซ‹ เชตเชฟเชšเชพเชฐ เชฒเซ‡เช– เชชเชฐเชจเซ€ เชŸเชฟเชชเซเชชเชฃเซ€เช“เชฎเชพเช‚เชจเซ€ เชšเชฐเซเชšเชพเชฎเชพเช‚เชฅเซ€ เชธเซเชตเชฏเช‚เชญเซ‚ เชœเชจเซเชฎเซเชฏเซ‹ เชนเชคเซ‹ "เช‡เชจเซ‹เชก เชตเชฟเชถเซ‡ เช•เช‚เชˆเช•".

เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชจเชพเชจเซ€ เชซเชพเช‡เชฒเซ‹ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชนเซ‡เช•เซเชธ

เชนเช•เซ€เช•เชค เช เช›เซ‡ เช•เซ‡ เช…เชฎเชพเชฐเซ€ เชธเซ‡เชตเชพเช“เชจเซ€ เช†เช‚เชคเชฐเชฟเช• เชตเชฟเชถเชฟเชทเซเชŸเชคเชพ เช เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชจเชพเชจเซ€ เชซเชพเช‡เชฒเซ‹เชจเซ‹ เชธเช‚เช—เซเชฐเชน เช›เซ‡. เช† เช•เซเชทเชฃเซ‡ เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เช†เชตเชพ เชธเซ‡เช‚เช•เชกเซ‹ เชŸเซ‡เชฐเชพเชฌเชพเช‡เชŸ เชกเซ‡เชŸเชพ เช›เซ‡. เช…เชจเซ‡ เช…เชฎเซ‡ เช•เซ‡เชŸเชฒเชพเช• เชธเซเชชเชทเซเชŸ เช…เชจเซ‡ เชเชŸเชฒเชพ เชธเซเชชเชทเซเชŸ เชจ เชนเซ‹เชฏ เชคเซ‡เชตเชพ เชฐเซ‡เช•เซเชธ เชฎเชณเซเชฏเชพ เช…เชจเซ‡ เชธเชซเชณเชคเชพเชชเซ‚เชฐเซเชตเช• เชคเซ‡เชฎเชจเซ€ เชถเซ‹เชงเช–เซ‹เชณ เช•เชฐเซ€.

เชคเซ‡เชฅเซ€, เชนเซเช‚ เช…เชฎเชพเชฐเซ‹ เช…เชจเซเชญเชต เชถเซ‡เชฐ เช•เชฐเซ€ เชฐเชนเซเชฏเซ‹ เช›เซเช‚, เช•เชฆเชพเชš เชคเซ‡ เช•เซ‹เชˆเชจเซ‡ เช‰เชชเชฏเซ‹เช—เซ€ เชฅเชถเซ‡.

เชธเชฎเชธเซเชฏเชพ เชเช•: "เช‰เชชเช•เชฐเชฃ เชชเชฐ เช•เซ‹เชˆ เชœเช—เซเชฏเชพ เชฌเชพเช•เซ€ เชจเชฅเซ€"

เช‰เชชเชฐเซ‹เช•เซเชค เชฒเซ‡เช–เชฎเชพเช‚ เชœเชฃเชพเชตเซเชฏเชพ เชฎเซเชœเชฌ, เชธเชฎเชธเซเชฏเชพ เช เช›เซ‡ เช•เซ‡ เชซเชพเช‡เชฒ เชธเชฟเชธเซเชŸเชฎ เชชเชฐ เชฎเชซเชค เชฌเซเชฒเซ‹เช•เซเชธ เช›เซ‡, เชชเชฐเช‚เชคเซ inode เชธเชฎเชพเชชเซเชค เชฅเชˆ เช—เชฏเซเช‚ เช›เซ‡.

เชคเชฎเซ‡ เช†เชฆเซ‡เชถ เชตเชกเซ‡ เชตเชชเชฐเชพเชฏเซ‡เชฒ เช…เชจเซ‡ เชซเซเชฐเซ€ เช‡เชจเซ‹เชกเซเชธเชจเซ€ เชธเช‚เช–เซเชฏเชพ เชšเช•เชพเชธเซ€ เชถเช•เซ‹ เช›เซ‹ df -ih:

เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชจเชพเชจเซ€ เชซเชพเช‡เชฒเซ‹ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชนเซ‡เช•เซเชธ

เชนเซเช‚ เชฒเซ‡เช–เชจเซ‡ เชซเชฐเซ€เชฅเซ€ เช•เชนเซ€เชถ เชจเชนเซ€เช‚; เชŸเซ‚เช‚เช•เชฎเชพเช‚, เชกเชฟเชธเซเช•เชฎเชพเช‚ เชกเซ‡เชŸเชพ เชฎเชพเชŸเซ‡เชจเชพ เชฌเช‚เชจเซ‡ เชฌเซเชฒเซ‹เช•เซเชธ เช…เชจเซ‡ เชฎเซ‡เชŸเชพ-เชฎเชพเชนเชฟเชคเซ€ เชฎเชพเชŸเซ‡เชจเชพ เชฌเซเชฒเซ‹เช•เซเชธ เช›เซ‡, เชœเซ‡เชจเซ‡ inodes (เช‡เชจเซเชกเซ‡เช•เซเชธ เชจเซ‹เชก) เชคเชฐเซ€เช•เซ‡ เชชเชฃ เช“เชณเช–เชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชœเซเชฏเชพเชฐเซ‡ เชซเชพเช‡เชฒ เชธเชฟเชธเซเชŸเชฎ เชถเชฐเซ‚ เชฅเชพเชฏ เชคเซเชฏเชพเชฐเซ‡ เชคเซ‡เชฎเชจเซ€ เชธเช‚เช–เซเชฏเชพ เชธเซ‡เชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ (เช…เชฎเซ‡ ext2 เช…เชจเซ‡ เชคเซ‡เชจเชพ เช…เชจเซเช—เชพเชฎเซ€เช“ เชตเชฟเชถเซ‡ เชตเชพเชค เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช) เช…เชจเซ‡ เชตเชงเซ เชฌเชฆเชฒเชพเชคเซเช‚ เชจเชฅเซ€. เชกเซ‡เชŸเชพ เชฌเซเชฒเซ‹เช•เซเชธ เช…เชจเซ‡ เช‡เชจเซ‹เชกเซเชธเชจเซเช‚ เชธเช‚เชคเซเชฒเชจ เชธเชฐเซ‡เชฐเชพเชถ เช†เช‚เช•เชกเชพเช•เซ€เชฏ เชกเซ‡เชŸเชพเชฎเชพเช‚เชฅเซ€ เช—เชฃเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เช…เชฎเชพเชฐเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เชœเซเชฏเชพเชฐเซ‡ เช˜เชฃเซ€ เชจเชพเชจเซ€ เชซเชพเช‡เชฒเซ‹ เชนเซ‹เชฏ เช›เซ‡, เชคเซเชฏเชพเชฐเซ‡ เชธเช‚เชคเซเชฒเชจ เช‡เชจเซ‹เชกเซเชธเชจเซ€ เชธเช‚เช–เซเชฏเชพ เชคเชฐเชซ เชตเชณเชตเซเช‚ เชœเซ‹เชˆเช - เชคเซ‡เชฎเชพเช‚ เชตเชงเซ เชนเซ‹เชตเชพ เชœเซ‹เชˆเช.

Linux เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ เชตเชฟเชตเชฟเชง เชฌเซ‡เชฒเซ‡เชจเซเชธ เชธเชพเชฅเซ‡ เชตเชฟเช•เชฒเซเชชเซ‹ เชชเซ‚เชฐเชพ เชชเชพเชกเซ‡ เช›เซ‡, เช…เชจเซ‡ เช† เชคเชฎเชพเชฎ เชชเซ‚เชฐเซเชต-เช—เชฃเชคเชฐเซ€ เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจเซ‹ เชซเชพเช‡เชฒเชฎเชพเช‚ เช›เซ‡ /etc/mke2fs.conf.
เชคเซ‡เชฅเซ€, mke2fs เชฎเชพเชฐเชซเชคเซ‡ เชซเชพเชˆเชฒ เชธเชฟเชธเซเชŸเชฎเชจเชพ เชชเซเชฐเชพเชฐเช‚เชญเชฟเช• เช†เชฐเช‚เชญ เชฆเชฐเชฎเชฟเชฏเชพเชจ, เชคเชฎเซ‡ เช‡เชšเซเช›เชฟเชค เชฐเซ‚เชชเชฐเซ‡เช–เชพเชจเซ‡ เชธเซเชชเชทเซเชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹.

เช…เชนเซ€เช‚ เชซเชพเช‡เชฒเชฎเชพเช‚เชฅเซ€ เช•เซ‡เชŸเชฒเชพเช• เช‰เชฆเชพเชนเชฐเชฃเซ‹ เช›เซ‡:

    small = {
        blocksize = 1024
        inode_size = 128
        inode_ratio = 4096
    }

    big = {
        inode_ratio = 32768
    }

    largefile = {
        inode_ratio = 1048576
        blocksize = -1
    }

mke2fs เชจเซ‡ เช•เซ‰เชฒ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เชคเชฎเซ‡ โ€œ-Tโ€ เชตเชฟเช•เชฒเซเชชเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช‡เชšเซเช›เชฟเชค เช‰เชชเชฏเซ‹เช— เช•เซ‡เชธ เชชเชธเช‚เชฆ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เชœเซ‹ เช•เซ‹เชˆ เชคเซˆเชฏเชพเชฐ เชธเซ‹เชฒเซเชฏเซเชถเชจ เชจ เชนเซ‹เชฏ เชคเซ‹ เชคเชฎเซ‡ เชฎเซ‡เชจเซเชฏเซเช…เชฒเซ€ เชœเชฐเซ‚เชฐเซ€ เชชเชฐเชฟเชฎเชพเชฃเซ‹ เชชเชฃ เชธเซ‡เชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹.

เชตเชงเซ เชตเชฟเช—เชคเซ‹ เชฎเชพเชŸเซ‡ เชฎเชพเชฐเซเช—เชฆเชฐเซเชถเชฟเช•เชพเช“เชฎเชพเช‚ เชตเชฐเซเชฃเชตเซ‡เชฒ เช›เซ‡ mke2fs.conf ะธ mke2fs.

เช‰เชชเชฐเซ‹เช•เซเชค เชฒเซ‡เช–เชฎเชพเช‚ เชเช• เชตเชฟเชถเซ‡เชทเชคเชพ เชœเซ‡เชจเซ‡ เชธเซเชชเชฐเซเชถเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เชจเชฅเซ€ เชคเซ‡ เช เช›เซ‡ เช•เซ‡ เชคเชฎเซ‡ เชกเซ‡เชŸเชพ เชฌเซเชฒเซ‹เช•เชจเซเช‚ เช•เชฆ เชธเซ‡เชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เชฆเซ‡เช–เซ€เชคเซ€ เชฐเซ€เชคเซ‡, เชฎเซ‹เชŸเซ€ เชซเชพเช‡เชฒเซ‹ เชฎเชพเชŸเซ‡ เชฎเซ‹เชŸเชพ เชฌเซเชฒเซ‹เช• เชธเชพเช‡เชเชจเซ‹ เช…เชฐเซเชฅ เชฅเชพเชฏ เช›เซ‡, เชจเชพเชจเซ€ เชซเชพเช‡เชฒเซ‹ เชฎเชพเชŸเซ‡ เชจเชพเชจเซ€ เชซเชพเช‡เชฒเชจเซ‹ เช…เชฐเซเชฅ เชฅเชพเชฏ เช›เซ‡.

เชœเซ‹ เช•เซ‡, เชชเซเชฐเซ‹เชธเซ‡เชธเชฐ เช†เชฐเซเช•เชฟเชŸเซ‡เช•เซเชšเชฐ เชœเซ‡เชตเซ€ เชฐเชธเชชเซเชฐเชฆ เชธเซเชตเชฟเชงเชพเชจเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเซ‡เชตเซ€ เชฏเซ‹เช—เซเชฏ เช›เซ‡.
เชฎเซ‡เช‚ เชเช•เชตเชพเชฐ เชตเชฟเชšเชพเชฐเซเชฏเซเช‚ เช•เซ‡ เชฎเซ‹เชŸเซ€ เชซเซ‹เชŸเซ‹ เชซเชพเช‡เชฒเซ‹ เชฎเชพเชŸเซ‡ เชฎเชจเซ‡ เชฎเซ‹เชŸเชพ เชฌเซเชฒเซ‹เช• เช•เชฆเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เชคเซ‡ เช˜เชฐเซ‡ เชฅเชฏเซเช‚, ARM เช†เชฐเซเช•เชฟเชŸเซ‡เช•เซเชšเชฐ เชชเชฐ WD เชจเชพเชฎเชจเชพ เชนเซ‹เชฎ เชซเชพเช‡เชฒ เชธเซเชŸเซ‹เชฐ เชชเชฐ. เช–เชšเช•เชพเชŸ เชตเชฟเชจเชพ, เชฎเซ‡เช‚ เช…เช—เชพเช‰ เชฌเชšเชค เชฎเชพเชชเซเชฏเชพ เชชเช›เซ€, เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค 8k เชจเซ‡ เชฌเชฆเชฒเซ‡ เชฌเซเชฒเซ‹เช•เชจเซเช‚ เช•เชฆ 16k เช…เชฅเชตเชพ 4k เชชเชฐ เชธเซ‡เชŸ เช•เชฐเซเชฏเซเช‚. เช…เชจเซ‡ เชธเซเชŸเซ‹เชฐเซ‡เชœ เชชเซ‹เชคเซ‡ เชจเชฟเชทเซเชซเชณ เชจ เชฅเชพเชฏ เชคเซเชฏเชพเช‚ เชธเซเชงเซ€ เชฌเชงเซเช‚ เชธเชพเชฐเซเช‚ เชนเชคเซเช‚, เช…เชจเซ‡ เชกเชฟเชธเซเช• เชนเชœเซ€ เชœเซ€เชตเช‚เชค เชนเชคเซ€. เชจเชฟเชฏเชฎเชฟเชค เช‡เชจเซเชŸเซ‡เชฒ เชชเซเชฐเซ‹เชธเซ‡เชธเชฐ เชธเชพเชฅเซ‡ เชจเชฟเชฏเชฎเชฟเชค เช•เชฎเซเชชเซเชฏเซเชŸเชฐเชฎเชพเช‚ เชกเชฟเชธเซเช• เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซเชฏเชพ เชชเช›เซ€, เชฎเชจเซ‡ เช†เชถเซเชšเชฐเซเชฏ เชฅเชฏเซเช‚: เชเช• เช…เชธเชฎเชฐเซเชฅเชฟเชค เชฌเซเชฒเซ‹เช• เช•เชฆ. เช…เชฎเซ‡ เชชเชนเซ‹เช‚เชšเซ€ เช—เชฏเชพ เช›เซ€เช. เชกเซ‡เชŸเชพ เชคเซเชฏเชพเช‚ เช›เซ‡, เชฌเชงเซเช‚ เชธเชพเชฐเซเช‚ เช›เซ‡, เชชเชฐเช‚เชคเซ เชคเซ‡ เชตเชพเช‚เชšเชตเซเช‚ เช…เชถเช•เซเชฏ เช›เซ‡. i386 เช…เชจเซ‡ เชธเชฎเชพเชจ เชชเซเชฐเซ‹เชธเซ‡เชธเชฐเซเชธ เชฌเซเชฒเซ‹เช• เชฎเชพเชชเซ‹ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเซ€ เชถเช•เชคเชพ เชจเชฅเซ€ เชœเซ‡ เชฎเซ‡เชฎเชฐเซ€ เชชเซƒเชทเซเช เชจเชพ เช•เชฆเชจเซ‡ เช…เชจเซเชฐเซ‚เชช เชจเชฅเซ€, เชœเซ‡ เชฌเชฐเชพเชฌเชฐ 4k เช›เซ‡. เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡, เชฏเซเชเชฐ เชธเซเชชเซ‡เชธเชฎเชพเช‚เชฅเซ€ เชฏเซเชŸเชฟเชฒเชฟเชŸเซ€เชเชจเชพ เช‰เชชเชฏเซ‹เช— เชธเชพเชฅเซ‡ เช† เชฌเชพเชฌเชคเชจเซ‹ เช…เช‚เชค เช†เชตเซเชฏเซ‹, เชฌเชงเซเช‚ เชงเซ€เชฎเซเช‚ เช…เชจเซ‡ เช‰เชฆเชพเชธเซ€ เชนเชคเซเช‚, เชชเชฐเช‚เชคเซ เชกเซ‡เชŸเชพ เชธเชพเชšเชตเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เชนเชคเซ‹. เชœเซ‹ เช•เซ‹เชˆเชจเซ‡ เชฐเชธ เชนเซ‹เชฏ, เชคเซ‹ เชฏเซเชŸเชฟเชฒเชฟเชŸเซ€เชจเซเช‚ เชจเชพเชฎ เช—เซ‚เช—เชฒ เช•เชฐเซ‹ fuseext2. เชจเซˆเชคเชฟเช•: เช•เชพเช‚ เชคเซ‹ เชคเชฎเชพเชฎ เช•เซ‡เชธเซ‹เชจเซ‹ เช…เช—เชพเช‰เชฅเซ€ เชตเชฟเชšเชพเชฐ เช•เชฐเซ‹, เช…เชฅเชตเชพ เชธเซเชชเชฐเชนเซ€เชฐเซ‹ เชนเซ‹เชตเชพเชจเซ‹ เชกเซ‹เชณ เชจ เช•เชฐเซ‹ เช…เชจเซ‡ เช—เซƒเชนเชฟเชฃเซ€เช“ เชฎเชพเชŸเซ‡ เชฎเชพเชจเช• เชธเซ‡เชŸเชฟเช‚เช—เซเชธเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹.

เชฏเซเชชเซ€เชกเซ€. เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชŸเชฟเชชเซเชชเชฃเซ€ เช…เชจเซเชธเชพเชฐ เชฌเซ‡เชฐเซ‡เช เชนเซเช‚ เชธเซเชชเชทเซเชŸ เช•เชฐเชตเชพ เชฎเชพเช‚เช—เซ เช›เซเช‚ เช•เซ‡ i386 เชฎเชพเชŸเซ‡ เชฌเซเชฒเซ‹เช•เชจเซเช‚ เช•เชฆ 4k เช•เชฐเชคเชพเช‚ เชตเชงเซ เชจ เชนเซ‹เชตเซเช‚ เชœเซ‹เชˆเช, เชชเชฐเช‚เชคเซ เชคเซ‡ เชฌเชฐเชพเชฌเชฐ 4k เชนเซ‹เชตเซเช‚ เชœเชฐเซ‚เชฐเซ€ เชจเชฅเซ€, เชเชŸเชฒเซ‡ เช•เซ‡. 1k เช…เชจเซ‡ 2k เชธเซเชตเซ€เช•เชพเชฐเซเชฏ เช›เซ‡.

เชคเซ‹, เช…เชฎเซ‡ เชธเชฎเชธเซเชฏเชพเช“ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชนเชฒ เช•เชฐเซ€?

เชธเซŒเชชเซเชฐเชฅเชฎ, เชœเซเชฏเชพเชฐเซ‡ เชฎเชฒเซเชŸเชฟ-เชŸเซ‡เชฐเชพเชฌเชพเช‡เชŸ เชกเชฟเชธเซเช• เชกเซ‡เชŸเชพเชฅเซ€ เชญเชฐเซ‡เชฒเซ€ เชนเซ‹เชฏ เชคเซเชฏเชพเชฐเซ‡ เช…เชฎเชจเซ‡ เชธเชฎเชธเซเชฏเชพ เช†เชตเซ€, เช…เชจเซ‡ เช…เชฎเซ‡ เชซเชพเช‡เชฒ เชธเชฟเชธเซเชŸเชฎ เช—เซ‹เช เชตเชฃเซ€เชจเซ‡ เชฌเชฆเชฒเซ€ เชถเช•เซเชฏเชพ เชจเชนเซ€เช‚.

เชฌเซ€เชœเซเช‚, เชคเชพเชคเซเช•เชพเชฒเชฟเช• เช‰เช•เซ‡เชฒเชจเซ€ เชœเชฐเซ‚เชฐ เชนเชคเซ€.

เชชเชฐเชฟเชฃเชพเชฎเซ‡, เช…เชฎเซ‡ เชจเชฟเชทเซเช•เชฐเซเชท เชชเชฐ เช†เชตเซเชฏเชพ เช•เซ‡ เช…เชฎเชพเชฐเซ‡ เชซเชพเช‡เชฒเซ‹เชจเซ€ เชธเช‚เช–เซเชฏเชพ เช˜เชŸเชพเชกเซ€เชจเซ‡ เชธเช‚เชคเซเชฒเชจ เชฌเชฆเชฒเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.
เชซเชพเช‡เชฒเซ‹เชจเซ€ เชธเช‚เช–เซเชฏเชพ เช˜เชŸเชพเชกเชตเชพ เชฎเชพเชŸเซ‡, เชซเชพเช‡เชฒเซ‹เชจเซ‡ เชเช• เชธเชพเชฎเชพเชจเซเชฏ เช†เชฐเซเช•เชพเช‡เชตเชฎเชพเช‚ เชฎเซ‚เช•เชตเชพเชจเซ‹ เชจเชฟเชฐเซเชฃเชฏ เชฒเซ‡เชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เชนเชคเซ‹. เช…เชฎเชพเชฐเซ€ เชตเชฟเชถเชฟเชทเซเชŸเชคเชพเช“เชจเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฐเชพเช–เซ€เชจเซ‡, เช…เชฎเซ‡ เชšเซ‹เช•เซเช•เชธ เชธเชฎเชฏเช—เชพเชณเชพเชจเซ€ เชฌเชงเซ€ เชซเชพเช‡เชฒเซ‹เชจเซ‡ เชเช• เช†เชฐเซเช•เชพเช‡เชตเชฎเชพเช‚ เชฎเซ‚เช•เซ€เช เช›เซ€เช, เช…เชจเซ‡ เชฆเชฐเชฐเซ‹เชœ เชฐเชพเชคเซเชฐเซ‡ เช•เซเชฐเซ‹เชจ เชŸเชพเชธเซเช•เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช†เชฐเซเช•เชพเช‡เชตเชฟเช‚เช— เชนเชพเชฅ เชงเชฐเซ€เช เช›เซ€เช.

เชชเชธเช‚เชฆ เช•เชฐเซ‡เชฒ เชเชฟเชช เช†เชฐเซเช•เชพเช‡เชต. เช…เช—เชพเช‰เชจเชพ เชฒเซ‡เช–เชจเซ€ เชŸเชฟเชชเซเชชเชฃเซ€เช“เชฎเชพเช‚, เชŸเชพเชฐ เชธเซ‚เชšเชตเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚, เชชเชฐเช‚เชคเซ เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เชเช• เชฎเซเชถเซเช•เซ‡เชฒเซ€ เช›เซ‡: เชคเซ‡เชฎเชพเช‚ เชธเชฎเชพเชตเชฟเชทเซเชŸเซ‹เชจเซเช‚ เช•เซ‹เชทเซเชŸเช• เชจเชฅเซ€, เช…เชจเซ‡ เชคเซ‡เชฎเชพเช‚เชจเซ€ เชซเชพเช‡เชฒเซ‹ เชธเซเชŸเซเชฐเซ€เชฎเชฎเชพเช‚ เชธเช‚เช—เซเชฐเชนเชฟเชค เช›เซ‡ (เชคเซ‡ เชฎเชพเชคเซเชฐ เชเชŸเชฒเซเช‚ เชœ เชจเชฅเซ€ เช•เซ‡ "เชŸเชพเชฐ" เช เชธเช‚เช•เซเชทเซ‡เชช เช›เซ‡. โ€œเชŸเซ‡เชช เช†เชฐเซเช•เชพเช‡เชตโ€ เชฎเชพเชŸเซ‡, เชŸเซ‡เชช เชกเซเชฐเชพเช‡เชตเชจเซ‹ เชตเชพเชฐเชธเซ‹), เชเชŸเชฒเซ‡ เช•เซ‡ . เชœเซ‹ เชคเชฎเชพเชฐเซ‡ เช†เชฐเซเช•เชพเช‡เชตเชจเชพ เช…เช‚เชคเซ‡ เชซเชพเช‡เชฒ เชตเชพเช‚เชšเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ, เชคเซ‹ เชคเชฎเชพเชฐเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เช†เชฐเซเช•เชพเช‡เชต เชตเชพเช‚เชšเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡เชฎเชพเช‚ เช†เชฐเซเช•เชพเช‡เชตเชจเซ€ เชถเชฐเซ‚เช†เชคเชฎเชพเช‚ เชธเช‚เชฌเช‚เชงเชฟเชค เชฆเชฐเซ‡เช• เชซเชพเช‡เชฒ เชฎเชพเชŸเซ‡ เช‘เชซเชธเซ‡เชŸเซเชธ เชถเชพเชฎเซ‡เชฒ เชจเชฅเซ€. เช…เชจเซ‡ เชคเซ‡เชฅเซ€ เชคเซ‡ เชเช• เชฒเชพเช‚เชฌเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€ เช›เซ‡. เชเชฟเชชเชฎเชพเช‚ เชฌเชงเซเช‚ เชตเชงเซ เชธเชพเชฐเซเช‚ เช›เซ‡: เชคเซ‡ เช†เชฐเซเช•เชพเช‡เชตเชฎเชพเช‚ เชธเชฎเชพเชตเชฟเชทเซเชŸเซ‹ เช…เชจเซ‡ เชซเชพเช‡เชฒ เช‘เชซเชธเซ‡เชŸเซเชธเชจเซเช‚ เชธเชฎเชพเชจ เช•เซ‹เชทเซเชŸเช• เชงเชฐเชพเชตเซ‡ เช›เซ‡, เช…เชจเซ‡ เชฆเชฐเซ‡เช• เชซเชพเช‡เชฒเชจเซ‹ เชเช•เซเชธเซ‡เชธ เชธเชฎเชฏ เชคเซ‡เชจเชพ เชธเซเชฅเชพเชจ เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชจเชฅเซ€. เช เซ€เช• เช›เซ‡, เช…เชฎเชพเชฐเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เช•เชฎเซเชชเซเชฐเซ‡เชถเชจ เชตเชฟเช•เชฒเซเชชเชจเซ‡ "0" เชชเชฐ เชธเซ‡เชŸ เช•เชฐเชตเชพเชจเซเช‚ เชถเช•เซเชฏ เชนเชคเซเช‚, เช•เชพเชฐเชฃ เช•เซ‡ เชฌเชงเซ€ เชซเชพเช‡เชฒเซ‹ เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ gzip เชฎเชพเช‚ เชธเช‚เช•เซเชšเชฟเชค เชนเชคเซ€.

เช•เซเชฒเชพเชฏเช‚เชŸ nginx เชฆเซเชตเชพเชฐเชพ เชซเชพเช‡เชฒเซ‹ เชชเซเชจเชƒเชชเซเชฐเชพเชชเซเชค เช•เชฐเซ‡ เช›เซ‡, เช…เชจเซ‡ เชœเซ‚เชจเชพ API เช…เชจเซเชธเชพเชฐ, เชซเช•เซเชค เชซเชพเช‡เชฒเชจเซเช‚ เชจเชพเชฎ เช‰เชฒเซเชฒเซ‡เช–เชฟเชค เช›เซ‡, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡ เช†เชจเชพ เชœเซ‡เชตเซเช‚:

http://www.server.com/hydra/20170416/0453/3bd24ae7-1df4-4d76-9d28-5b7fcb7fd8e5

เชซเซเชฒเชพเชฏ เชชเชฐ เชซเชพเช‡เชฒเซ‹เชจเซ‡ เช…เชจเชชเซ…เช• เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เช…เชฎเซ‡ nginx-unzip-module เชฎเซ‹เชกเซเชฏเซเชฒ เชถเซ‹เชงเซ€ เช…เชจเซ‡ เช•เชจเซ‡เช•เซเชŸ เช•เชฐเซเชฏเซเช‚ (https://github.com/youzee/nginx-unzip-module) เช…เชจเซ‡ เชฌเซ‡ เช…เชชเชธเซเชŸเซเชฐเซ€เชฎ เชธเซ‡เชŸ เช•เชฐเซ‹.

เชชเชฐเชฟเชฃเชพเชฎ เชจเซ€เชšเซ‡เชจเซ€ เช—เซ‹เช เชตเชฃเซ€ เชนเชคเซ€:

เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชจเชพเชจเซ€ เชซเชพเช‡เชฒเซ‹ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชนเซ‡เช•เซเชธ

เชธเซ‡เชŸเชฟเช‚เช—เซเชธเชฎเชพเช‚ เชฌเซ‡ เชนเซ‹เชธเซเชŸ เช†เชจเชพ เชœเซ‡เชตเชพ เชฆเซ‡เช–เชพเชคเชพ เชนเชคเชพ:

server {
  listen *:8081;

  location / {
    root      /home/filestorage;
  }
}

server {
  listen *:8082;

  location ~ ^/hydra/(d+)/(d+)/(.*)$ {
    root      /home/filestorage;
    file_in_unzip_archivefile "/home/filestorage/hydra/$1/$2.zip";
    file_in_unzip_extract "$2/$3";
    file_in_unzip;
  }
}

เช…เชจเซ‡ เช…เชชเชธเซเชŸเซเชฐเซ€เชฎ nginx เชชเชฐ เช…เชชเชธเซเชŸเซเชฐเซ€เชฎ เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจ:

upstream storage {
  server server.com:8081;
  server server.com:8082;
}

เชคเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡:

  • เช•เซเชฒเชพเชฏเช‚เชŸ เชซเซเชฐเชจเซเชŸ nginx เชชเชฐ เชœเชพเชฏ เช›เซ‡
  • เชซเซเชฐเชจเซเชŸ nginx เชชเซเชฐเชฅเชฎ เช…เชชเชธเซเชŸเซเชฐเซ€เชฎเชฅเซ€ เชซเชพเช‡เชฒเชจเซ‡ เชธเซ‡เชตเชพ เช†เชชเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ‡ เช›เซ‡, เชเชŸเชฒเซ‡ เช•เซ‡. เชธเซ€เชงเชพ เชซเชพเช‡เชฒ เชธเชฟเชธเซเชŸเชฎเชฎเชพเช‚เชฅเซ€
  • เชœเซ‹ เชคเซเชฏเชพเช‚ เช•เซ‹เชˆ เชซเชพเช‡เชฒ เชจ เชนเซ‹เชฏ, เชคเซ‹ เชคเซ‡ เชฌเซ€เชœเชพ เช…เชชเชธเซเชŸเซเชฐเซ€เชฎเชฎเชพเช‚เชฅเซ€ เชฎเซ‹เช•เชฒเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ‡ เช›เซ‡, เชœเซ‡ เช†เชฐเซเช•เชพเช‡เชตเชจเซ€ เช…เช‚เชฆเชฐ เชซเชพเช‡เชฒ เชถเซ‹เชงเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ‡ เช›เซ‡.

เชธเชฎเชธเซเชฏเชพ เชฌเซ‡: เชซเชฐเซ€เชฅเซ€ "เช‰เชชเช•เชฐเชฃ เชชเชฐ เช•เซ‹เชˆ เชœเช—เซเชฏเชพ เชฌเชพเช•เซ€ เชจเชฅเซ€"

เชœเซเชฏเชพเชฐเซ‡ เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€เชฎเชพเช‚ เช˜เชฃเซ€ เชฌเชงเซ€ เชซเชพเชˆเชฒเซ‹ เชนเซ‹เชฏ เชคเซเชฏเชพเชฐเซ‡ เช† เชฌเซ€เชœเซ€ เชธเชฎเชธเซเชฏเชพเชจเซ‹ เชธเชพเชฎเชจเซ‹ เช•เชฐเชตเซ‹ เชชเชกเซ‡ เช›เซ‡.
เช…เชฎเซ‡ เชซเชพเช‡เชฒ เชฌเชจเชพเชตเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช, เชœเช—เซเชฏเชพ เชจ เชนเซ‹เชตเชพเชจเซ€ เชคเช‚เชคเซเชฐ เชซเชฐเชฟเชฏเชพเชฆ เช•เชฐเซ‡ เช›เซ‡. เช…เชฎเซ‡ เชซเชพเช‡เชฒเชจเซเช‚ เชจเชพเชฎ เชฌเชฆเชฒเซ€เช เช›เซ€เช เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชซเชฐเซ€เชฅเซ€ เชฌเชจเชพเชตเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ€เช เช›เซ€เช.

เชคเซ‡ เชฌเชนเชพเชฐ เชตเชณเซ‡ เช›เซ‡.

เชคเซ‡ เช†เชจเชพ เชœเซ‡เชตเซเช‚ เช•เช‚เชˆเช• เชฆเซ‡เช–เชพเชฏ เช›เซ‡:

เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชจเชพเชจเซ€ เชซเชพเช‡เชฒเซ‹ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชนเซ‡เช•เซเชธ

เช‡เชจเซ‹เชกเซเชธ เชคเชชเชพเชธเชตเชพเชฅเซ€ เช•เช‚เชˆ เชฎเชณเซเชฏเซเช‚ เชจเชฅเซ€ - เชคเซเชฏเชพเช‚ เช˜เชฃเชพ เชฎเชซเชค เช›เซ‡.
เชฒเซ‹เช•เซ‡เชถเชจ เชคเชชเชพเชธเชตเซเช‚ เช เชœ เช›เซ‡.
เช…เชฎเซ‡ เชตเชฟเชšเชพเชฐเซเชฏเซเช‚ เช•เซ‡ เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€เชฎเชพเช‚ เช˜เชฃเซ€ เชฌเชงเซ€ เชซเชพเชˆเชฒเซ‹ เชนเซ‹เชˆ เชถเช•เซ‡ เช›เซ‡, เช…เชจเซ‡ เชคเซ‡เชจเชพ เชชเชฐ เชฎเชฐเซเชฏเชพเชฆเชพ เช›เซ‡, เชชเชฐเช‚เชคเซ เชซเชฐเซ€เชฅเซ€ เช•เซ‹เชˆ: เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€ เชฆเซ€เช  เชซเชพเช‡เชฒเซ‹เชจเซ€ เชฎเชนเชคเซเชคเชฎ เชธเช‚เช–เซเชฏเชพ: ~1.3 ร— 10^20

เชนเชพ, เช…เชจเซ‡ เชœเซ‹ เชคเชฎเซ‡ เชจเชพเชฎ เชฌเชฆเชฒเซ‹ เชคเซ‹ เชคเชฎเซ‡ เชซเชพเช‡เชฒ เชฌเชจเชพเชตเซ€ เชถเช•เซ‹ เช›เซ‹.
เชจเชฟเชทเซเช•เชฐเซเชท - เชธเชฎเชธเซเชฏเชพ เชซเชพเช‡เชฒเชจเชพ เชจเชพเชฎเชฎเชพเช‚ เช›เซ‡.

เชตเชงเซ เชถเซ‹เชงเซ‹ เชฆเชฐเซเชถเชพเชตเซ‡ เช›เซ‡ เช•เซ‡ เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€ เช‡เชจเซเชกเซ‡เช•เซเชธ เชฌเชจเชพเชตเชคเซ€ เชตเช–เชคเซ‡ เชธเชฎเชธเซเชฏเชพ เชนเซ‡เชถเชฟเช‚เช— เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎเชฎเชพเช‚ เช›เซ‡; เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชซเชพเช‡เชฒเซ‹ เชธเชพเชฅเซ‡, เชคเชฎเชพเชฎ เช†เช—เชพเชฎเซ€ เชชเชฐเชฟเชฃเชพเชฎเซ‹ เชธเชพเชฅเซ‡ เช…เชฅเชกเชพเชฎเชฃ เชœเซ‹เชตเชพ เชฎเชณเซ‡ เช›เซ‡. เชคเชฎเซ‡ เช…เชนเซ€เช‚ เชตเชงเซ เชตเชฟเช—เชคเซ‹ เชตเชพเช‚เชšเซ€ เชถเช•เซ‹ เช›เซ‹: https://ext4.wiki.kernel.org/index.php/Ext4_Disk_Layout#Hash_Tree_Directories

เชคเชฎเซ‡ เช† เชตเชฟเช•เชฒเซเชชเชจเซ‡ เชจเชฟเชทเซเช•เซเชฐเชฟเชฏ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹, เชชเชฐเช‚เชคเซ... เชฌเชงเซ€ เชซเชพเช‡เชฒเซ‹เชฎเชพเช‚ เชถเซ‹เชง เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เชจเชพเชฎ เชฆเซเชตเชพเชฐเชพ เชซเชพเช‡เชฒเชจเซ€ เชถเซ‹เชง เช…เชฃเชงเชพเชฐเซ€ เชฐเซ€เชคเซ‡ เชฒเชพเช‚เชฌเซ€ เชฌเชจเซ€ เชถเช•เซ‡ เช›เซ‡.

 tune2fs -O "^dir_index" /dev/sdb3

เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡, เช† เชเช• เช…เชธเซเชฅเชพเชฏเซ€ เช‰เช•เซ‡เชฒ เช›เซ‡ เชœเซ‡ เช•เชพเชฎ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡.

เชจเซˆเชคเชฟเช•: เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€เชฎเชพเช‚ เช˜เชฃเซ€ เชฌเชงเซ€ เชซเชพเช‡เชฒเซ‹ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เช–เชฐเชพเชฌ เชตเชธเซเชคเซ เช›เซ‡. เช†เชตเซเช‚ เช•เชฐเชตเชพเชจเซ€ เช•เซ‹เชˆ เชœเชฐเซ‚เชฐ เชจเชฅเซ€.

เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เช†เชตเชพ เช•เชฟเชธเซเชธเชพเช“เชฎเชพเช‚, เชจเซ‡เชธเซเชŸเซ‡เชก เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€เช“ เชซเชพเช‡เชฒเชจเชพ เชจเชพเชฎเชจเชพ เชชเซเชฐเชฅเชฎ เช…เช•เซเชทเชฐเซ‹ เชฆเซเชตเชพเชฐเชพ เช…เชฅเชตเชพ เช•เซ‡เชŸเชฒเชพเช• เช…เชจเซเชฏ เชชเชฐเชฟเชฎเชพเชฃเซ‹ เชฆเซเชตเชพเชฐเชพ เชฌเชจเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชคเชพเชฐเซ€เช–เซ‹ เชฆเซเชตเชพเชฐเชพ, เชฎเซ‹เชŸเชพเชญเชพเช—เชจเชพ เช•เชฟเชธเซเชธเชพเช“เชฎเชพเช‚ เช† เชฆเชฟเชตเชธเชจเซ‡ เชฌเชšเชพเชตเซ‡ เช›เซ‡.
เชชเชฐเช‚เชคเซ เชจเชพเชจเซ€ เชซเชพเช‡เชฒเซ‹เชจเซ€ เช•เซเชฒ เชธเช‚เช–เซเชฏเชพ เชนเชœเซ เชชเชฃ เช–เชฐเชพเชฌ เช›เซ‡, เชญเชฒเซ‡ เชคเซ‡ เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€เช“เชฎเชพเช‚ เชตเชฟเชญเชพเชœเชฟเชค เชนเซ‹เชฏ - เชชเช›เซ€ เชชเซเชฐเชฅเชฎ เชธเชฎเชธเซเชฏเชพ เชœเซเช“.

เชธเชฎเชธเซเชฏเชพ เชคเซเชฐเชฃ: เชซเชพเช‡เชฒเซ‹เชจเซ€ เชธเซ‚เชšเชฟ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชœเซ‹เชตเซ€ เชœเซ‹ เชคเซ‡เชฎเชพเช‚เชจเซ€ เช˜เชฃเซ€ เชนเซ‹เชฏ

เช…เชฎเชพเชฐเซ€ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเชฎเชพเช‚, เชœเซเชฏเชพเชฐเซ‡ เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เช˜เชฃเซ€ เชฌเชงเซ€ เชซเชพเชˆเชฒเซ‹ เชนเซ‹เชฏ เช›เซ‡, เชคเซเชฏเชพเชฐเซ‡ เชเช• เชฏเชพ เชฌเซ€เชœเซ€ เชฐเซ€เชคเซ‡ เช…เชฎเซ‡ เชจเชฟเชฐเซเชฆเซ‡เชถเชฟเช•เชพเชจเซ€ เชธเชพเชฎเช—เซเชฐเซ€เชจเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชœเซ‹เชตเซ€ เชคเซ‡เชจเซ€ เชธเชฎเชธเซเชฏเชพเชจเซ‹ เชธเชพเชฎเชจเซ‹ เช•เชฐเชตเซ‹ เชชเชกเซเชฏเซ‹.

เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค เช‰เช•เซ‡เชฒ - เช†เชฆเซ‡เชถ ls.
เช“เช•เซ‡, เชšเชพเชฒเซ‹ เชœเซ‹เชˆเช เช•เซ‡ 4772098 เชซเชพเชˆเชฒเซ‹ เชชเชฐ เชถเซเช‚ เชฅเชพเชฏ เช›เซ‡:


$ time ls /home/app/express.repository/offercache/ >/dev/null

real	0m30.203s
user	0m28.327s
sys	0m1.876s

30 เชธเซ‡เช•เชจเซเชก... เช–เซ‚เชฌ เชตเชงเชพเชฐเซ‡ เชนเชถเซ‡. เชคเชฆเซเชชเชฐเชพเช‚เชค, เชฎเซ‹เชŸเชพเชญเชพเช—เชจเซ‹ เชธเชฎเชฏ เชฏเซเชเชฐ เชธเซเชชเซ‡เชธเชฎเชพเช‚ เชซเชพเชˆเชฒเซ‹เชจเซ€ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเชตเชพเชฎเชพเช‚ เช–เชฐเซเชšเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เช…เชจเซ‡ เช•เชฐเซเชจเชฒเชจเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€ เชชเชฐ เชฌเชฟเชฒเช•เซเชฒ เชจเชนเซ€เช‚.

เชชเชฐเช‚เชคเซ เชคเซเชฏเชพเช‚ เชเช• เช‰เช•เซ‡เชฒ เช›เซ‡:


$ time find /home/app/express.repository/offercache/ >/dev/null

real	0m3.714s
user	0m1.998s
sys	0m1.717s

3 เชธเซ‡เช•เชจเซเชก. 10 เช—เชฃเซ€ เชเชกเชชเซ€.
เชนเซเชฐเซ‡!

เชฏเซ.เชชเซ€.เชกเซ€.

เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชคเชฐเชซเชฅเซ€ เชตเชงเซ เชเชกเชชเซ€ เช‰เช•เซ‡เชฒ เชฌเซ‡เชฐเซ‡เช - เชตเชฐเซเช—เซ€เช•เชฐเชฃ เช…เช•เซเชทเชฎ เช•เชฐเซ‹ ls


time ls -U /home/app/express.repository/offercache/ >/dev/null
real	0m2.985s
user	0m1.377s
sys	0m1.608s

เชธเชฎเชธเซเชฏเชพ เชšเชพเชฐ: เชซเชพเช‡เชฒเซ‹ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เชฎเซ‹เชŸเซ€ LA

เชธเชฎเชฏ เชธเชฎเชฏ เชชเชฐ เชเชตเซ€ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟ เชŠเชญเซ€ เชฅเชพเชฏ เช›เซ‡ เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเชพเชฐเซ‡ เชเช• เชฎเชถเซ€เชจเชฅเซ€ เชฌเซ€เชœเชพ เชฎเชถเซ€เชจเชฎเชพเช‚ เชซเชพเช‡เชฒเซ‹เชจเชพ เชธเชฎเซ‚เชนเชจเซ€ เชจเช•เชฒ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ เช›เซ‡. เชคเซ‡ เชœ เชธเชฎเชฏเซ‡, เชเชฒเช เช˜เชฃเซ€เชตเชพเชฐ เช…เชตเชพเชธเซเชคเชตเชฟเช• เชฐเซ€เชคเซ‡ เชตเชงเซ‡ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เชฌเชงเซเช‚ เชœ เชกเชฟเชธเซเช•เชจเชพ เชชเซเชฐเชฆเชฐเซเชถเชจ เชชเชฐ เช†เชงเชพเชฐเชฟเชค เช›เซ‡.

เชคเชฎเซ‡ เชœเซ‡ เชธเซŒเชฅเซ€ เชธเซเชฎเชพเชฐเซเชŸ เชตเชธเซเชคเซ เช•เชฐเชตเชพ เชฎเชพเช‚เช—เซ‹ เช›เซ‹ เชคเซ‡ เช›เซ‡ SSD เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹. เช–เชฐเซ‡เช–เชฐ เช เช‚เชกเซ€. เชเช•เชฎเชพเชคเซเชฐ เชชเซเชฐเชถเซเชจ เชฎเชฒเซเชŸเชฟ-เชŸเซ‡เชฐเชพเชฌเชพเช‡เชŸ SSDs เชจเซ€ เช•เชฟเช‚เชฎเชค เช›เซ‡.

เชชเชฐเช‚เชคเซ เชœเซ‹ เชกเชฟเชธเซเช• เชธเชพเชฎเชพเชจเซเชฏ เชนเซ‹เชฏ, เชคเซ‹ เชคเชฎเชพเชฐเซ‡ เชซเชพเช‡เชฒเซ‹เชจเซ€ เชจเช•เชฒ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡, เช…เชจเซ‡ เช† เชเช• เชชเซเชฐเซ‹เชกเช•เซเชถเชจ เชธเชฟเชธเซเชŸเชฎ เชชเชฃ เช›เซ‡, เชœเซเชฏเชพเช‚ เช“เชตเชฐเชฒเซ‹เชก เช•เซเชฒเชพเชฏเช‚เชŸ เชคเชฐเชซเชฅเซ€ เช…เชธเช‚เชคเซเชทเซเชŸ เช‰เชฆเซเช—เชพเชฐเซ‹ เชคเชฐเชซ เชฆเซ‹เชฐเซ€ เชœเชพเชฏ เช›เซ‡? เช“เช›เชพเชฎเชพเช‚ เช“เช›เชพ เชฌเซ‡ เช‰เชชเชฏเซ‹เช—เซ€ เชธเชพเชงเชจเซ‹ เช›เซ‡: nice ะธ ionice.

nice โ€” เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเชจเซ€ เชชเซเชฐเชพเชงเชพเชจเซเชฏเชคเชพ เช˜เชŸเชพเชกเซ‡ เช›เซ‡, เชคเซ‡ เชฎเซเชœเชฌ เชถเซ‡เชกเซเชฏเซ‚เชฒเชฐ เช…เชจเซเชฏ, เช‰เชšเซเชš เช…เช—เซเชฐเชคเชพ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเช“ เชฎเชพเชŸเซ‡ เชตเชงเซ เชธเชฎเชฏเชจเชพ เชŸเซเช•เชกเชพเช“เชจเซเช‚ เชตเชฟเชคเชฐเชฃ เช•เชฐเซ‡ เช›เซ‡.
เช…เชฎเชพเชฐเซ€ เชชเซเชฐเซ‡เช•เซเชŸเชฟเชธเชฎเชพเช‚, เชคเซ‡ เชฎเชนเชคเซเชคเชฎ (19 เช เชจเซเชฏเซ‚เชจเชคเชฎ เช…เช—เซเชฐเชคเชพ เช›เซ‡, -20 (เชฎเชพเชˆเชจเชธ 20) เชฎเชนเชคเซเชคเชฎ เช›เซ‡) เชชเชฐ เชธเชฐเชธ เชธเซ‡เชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เชฎเชฆเชฆ เช•เชฐเซ‡ เช›เซ‡.

ionice - เชคเซ‡ เชฎเซเชœเชฌ I/O เชถเซ‡เชกเซเชฏเซเชฒเชฟเช‚เช—เชจเซ‡ เชธเชฎเชพเชฏเซ‹เชœเชฟเชค เช•เชฐเซ‡ เช›เซ‡

เชœเซ‹ เชคเชฎเซ‡ RAID เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ‹ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เช…เชšเชพเชจเช• เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เช เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ (เช…เชธเชซเชณ เชฐเซ€เชฌเซ‚เชŸ เชชเช›เซ€ เช…เชฅเชตเชพ เชคเชฎเชพเชฐเซ‡ เชกเชฟเชธเซเช• เชฌเชฆเชฒเซเชฏเชพ เชชเช›เซ€ RAID เชเชฐเซ‡เชจเซ‡ เชชเซเชจเชƒเชธเซเชฅเชพเชชเชฟเชค เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡), เชคเซ‹ เช•เซ‡เชŸเชฒเซ€เช• เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเช“เชฎเชพเช‚ เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เชเซ‡เชถเชจเชจเซ€ เชเชกเชช เช˜เชŸเชพเชกเชตเชพเชจเซ‹ เช…เชฐเซเชฅ เชฅเชพเชฏ เช›เซ‡ เชœเซ‡เชฅเซ€ เช…เชจเซเชฏ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเช“ เชตเชงเซ เช•เชพเชฐเซเชฏ เช•เชฐเซ€ เชถเช•เซ‡. เช…เชฅเชตเชพ เช“เช›เชพ เชชเซเชฐเชฎเชพเชฃเชฎเชพเช‚. เชจเซ€เชšเซ‡เชจเซ‹ เช†เชฆเซ‡เชถ เช† เชฎเชพเชŸเซ‡ เชฎเชฆเชฆ เช•เชฐเชถเซ‡:


echo 1000 > /proc/sys/dev/raid/speed_limit_max

เชชเชพเช‚เชšเชฎเซ€ เชธเชฎเชธเซเชฏเชพ: เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎเชฎเชพเช‚ เชซเชพเช‡เชฒเซ‹เชจเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เช เช•เชฐเชตเซ€

เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชนเชœเซ€ เชชเชฃ เชเชŸเชฒเซ€ เชœ เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชซเชพเชˆเชฒเซ‹ เช›เซ‡ เช•เซ‡ เชœเซ‡เชจเซ‡ เชŸเชพเชณเชตเชพ เชฎเชพเชŸเซ‡ เชฌเซ€เชœเชพ เชธเชฐเซเชตเชฐ เชชเชฐ เชฌเซ‡เช•เช…เชช เชฒเซ‡เชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡... เชซเชพเชˆเชฒเซ‹ เชธเชคเชค เชฒเช–เชพเชˆ เชฐเชนเซ€ เช›เซ‡, เชคเซ‡เชฅเซ€ เชจเซเชฏเซ‚เชจเชคเชฎ เชจเซเช•เชธเชพเชจ เชฅเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเชพเชฐเซ‡ เชถเช•เซเชฏ เชคเซ‡เชŸเชฒเซ€ เชเชกเชชเชฅเซ€ เชคเซ‡เชฎเชจเซ€ เชจเช•เชฒ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.

เชฎเชพเชจเช• เช‰เช•เซ‡เชฒ: SSH เชชเชฐ Rsync.

เช† เชเช• เชธเชพเชฐเซ‹ เชตเชฟเช•เชฒเซเชช เช›เซ‡ เชธเชฟเชตเชพเชฏ เช•เซ‡ เชคเชฎเชพเชฐเซ‡ เชคเซ‡เชจเซ‡ เชฆเชฐ เชฅเซ‹เชกเซ€เช• เชธเซ‡เช•เชจเซเชกเชฎเชพเช‚ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ. เช…เชจเซ‡ เชคเซเชฏเชพเช‚ เช˜เชฃเซ€ เชฌเชงเซ€ เชซเชพเช‡เชฒเซ‹ เช›เซ‡. เชœเซ‹ เชคเชฎเซ‡ เชคเซ‡เชฎเชจเซ€ เชจเช•เชฒ เชจ เช•เชฐเซ‹ เชคเซ‹ เชชเชฃ, เชคเชฎเชพเชฐเซ‡ เชนเชœเซ€ เชชเชฃ เช•เซ‹เชˆเช• เชฐเซ€เชคเซ‡ เชธเชฎเชœเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ เช•เซ‡ เชถเซเช‚ เชฌเชฆเชฒเชพเชฏเซเช‚ เช›เซ‡, เช…เชจเซ‡ เช˜เชฃเซ€ เชฎเชฟเชฒเชฟเชฏเชจ เชซเชพเช‡เชฒเซ‹เชจเซ€ เชคเซเชฒเชจเชพ เช•เชฐเชตเชพเชฎเชพเช‚ เชธเชฎเชฏ เชฒเชพเช—เซ‡ เช›เซ‡ เช…เชจเซ‡ เชกเชฟเชธเซเช• เชชเชฐ เชฒเซ‹เชก เชฅเชพเชฏ เช›เซ‡.

เชคเซ‡. เชฆเชฐ เชตเช–เชคเซ‡ เชธเชฐเช–เชพเชฎเชฃเซ€ เช•เชฐเซเชฏเชพ เชตเชฟเชจเชพ, เช†เชชเชฃเซ‡ เชคเชฐเชค เชœ เชœเชพเชฃเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ เช•เซ‡ เชถเซเช‚ เชจเช•เชฒ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.

เชฌเชšเชพเชต - lsyncd. Lsyncd - เชฒเชพเช‡เชต เชธเชฟเช‚เช•เชฟเช‚เช— (เชฎเชฟเชฐเชฐ) เชกเชฟเชฎเชจ. เชคเซ‡ rsync เชฆเซเชตเชพเชฐเชพ เชชเชฃ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เชตเชงเชพเชฐเชพเชฎเชพเช‚ inotify เช…เชจเซ‡ fsevens เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชซเซ‡เชฐเชซเชพเชฐเซ‹ เชฎเชพเชŸเซ‡ เชซเชพเช‡เชฒ เชธเชฟเชธเซเชŸเชฎเชจเซเช‚ เชจเชฟเชฐเซ€เช•เซเชทเชฃ เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชซเช•เซเชค เชคเซ‡ เชซเชพเช‡เชฒเซ‹เชจเซ€ เชจเช•เชฒ เช•เชฐเชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเซ‡ เช›เซ‡ เชœเซ‡ เชฆเซ‡เช–เชพเชฏ เช›เซ‡ เช…เชฅเชตเชพ เชฌเชฆเชฒเชพเชˆ เช›เซ‡.

เชธเชฎเชธเซเชฏเชพ เช›: เชกเชฟเชธเซเช•เชจเซ‡ เช•เซ‹เชฃ เชฒเซ‹เชก เช•เชฐเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡ เชคเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชธเชฎเชœเชตเซเช‚

เชฆเชฐเซ‡เช• เชตเซเชฏเช•เซเชคเชฟ เช•เชฆเชพเชš เช† เชœเชพเชฃเซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เชคเซ‡เชฎ เช›เชคเชพเช‚, เชšเชฟเชคเซเชฐ เชชเซ‚เชฐเซเชฃ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡: เชกเชฟเชธเซเช• เชธเชฌเชธเชฟเชธเซเชŸเชฎเชจเซ‡ เชฎเซ‹เชจเชฟเชŸเชฐ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชเช• เช†เชฆเซ‡เชถ เช›เซ‡ iotop - เชœเซ‡เชฎ top, เชชเชฐเช‚เชคเซ เชคเซ‡ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเช“ เชฆเชฐเซเชถเชพเชตเซ‡ เช›เซ‡ เชœเซ‡ เชกเชฟเชธเซเช•เชจเซ‹ เชธเซŒเชฅเซ€ เชตเชงเซ เชธเช•เซเชฐเชฟเชฏ เชฐเซ€เชคเซ‡ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชฐเชนเซ€ เช›เซ‡.

เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชจเชพเชจเซ€ เชซเชพเช‡เชฒเซ‹ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชนเซ‡เช•เซเชธ

เชฎเชพเชฐเซเช— เชฆเซเชตเชพเชฐเชพ, เชธเชพเชฐเซ€ เชœเซ‚เชจเซ€ เชŸเซ‹เชš เชคเชฎเชจเซ‡ เช เชธเชฎเชœเชตเชพ เชฎเชพเชŸเซ‡ เชชเชฃ เชชเชฐเชตเชพเชจเช—เซ€ เช†เชชเซ‡ เช›เซ‡ เช•เซ‡ เชกเชฟเชธเซเช•เชฎเชพเช‚ เช•เซ‹เชˆ เชธเชฎเชธเซเชฏเชพ เช›เซ‡ เช•เซ‡ เชจเชนเซ€เช‚. เช† เชฎเชพเชŸเซ‡ เชฌเซ‡ เชธเซŒเชฅเซ€ เชฏเซ‹เช—เซเชฏ เชตเชฟเช•เชฒเซเชชเซ‹ เช›เซ‡: เชฒเซ‹เชก เชเชตเชฐเซ‡เชœ ะธ เชฐเชพเชน เชœเซเช“.

เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชจเชพเชจเซ€ เชซเชพเช‡เชฒเซ‹ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชนเซ‡เช•เซเชธ

เชชเซเชฐเชฅเชฎ เชฌเชคเชพเชตเซ‡ เช›เซ‡ เช•เซ‡ เชธเซ‡เชตเชพ เชฎเชพเชŸเซ‡ เช•เชคเชพเชฐเชฎเชพเช‚ เช•เซ‡เชŸเชฒเซ€ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเช“ เช›เซ‡, เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ 2 เชฅเซ€ เชตเชงเซ - เช•เช‚เชˆเช• เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ เช–เซ‹เชŸเซเช‚ เชฅเชˆ เชฐเชนเซเชฏเซเช‚ เช›เซ‡. เชœเซเชฏเชพเชฐเซ‡ เชธเช•เซเชฐเชฟเชฏเชชเชฃเซ‡ เชฌเซ‡เช•เช…เชช เชธเชฐเซเชตเชฐเซเชธ เชชเชฐ เชจเช•เชฒ เช•เชฐเซ€เช เช›เซ€เช, เชคเซเชฏเชพเชฐเซ‡ เช…เชฎเซ‡ 6-8 เชธเซเชงเซ€เชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ€เช เช›เซ€เช, เชœเซ‡ เชชเช›เซ€ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเชจเซ‡ เช…เชธเชพเชฎเชพเชจเซเชฏ เช—เชฃเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.

เชฌเซ€เชœเซเช‚ เช เช›เซ‡ เช•เซ‡ เชชเซเชฐเซ‹เชธเซ‡เชธเชฐ เชกเชฟเชธเซเช• เช“เชชเชฐเซ‡เชถเชจเชฎเชพเช‚ เช•เซ‡เชŸเชฒเซเช‚ เชตเซเชฏเชธเซเชค เช›เซ‡. IOwait>10% เช เชšเชฟเช‚เชคเชพเชจเซเช‚ เช•เชพเชฐเชฃ เช›เซ‡, เชœเซ‹ เช•เซ‡ เชšเซ‹เช•เซเช•เชธ เชฒเซ‹เชก เชชเซเชฐเซ‹เชซเชพเช‡เชฒเชตเชพเชณเชพ เช…เชฎเชพเชฐเชพ เชธเชฐเซเชตเชฐเซเชธ เชชเชฐ เชคเซ‡ เชธเชคเชค 40-50% เช›เซ‡, เช…เชจเซ‡ เช† เช–เชฐเซ‡เช–เชฐ เชงเซ‹เชฐเชฃ เช›เซ‡.

เชนเซเช‚ เช…เชนเซ€เช‚ เชธเชฎเชพเชชเซเชค เช•เชฐเซ€เชถ, เชœเซ‹ เช•เซ‡ เชธเช‚เชญเชตเชคเชƒ เชเชตเชพ เช˜เชฃเชพ เชฎเซเชฆเซเชฆเชพเช“ เช›เซ‡ เชœเซ‡เชจเซ‹ เช†เชชเชฃเซ‡ เชธเชพเชฎเชจเซ‹ เช•เชฐเชตเซ‹ เชชเชกเซเชฏเซ‹ เชจเชฅเซ€, เชฎเชจเซ‡ เชŸเชฟเชชเซเชชเชฃเซ€เช“ เช…เชจเซ‡ เชฐเชธเชชเซเชฐเชฆ เชตเชพเชธเซเชคเชตเชฟเช• เช•เซ‡เชธเซ‹เชจเชพ เชตเชฐเซเชฃเชจเชจเซ€ เชฐเชพเชน เชœเซ‹เชตเชพเชฎเชพเช‚ เช†เชจเช‚เชฆ เชฅเชถเซ‡.

เชธเซ‹เชฐเซเชธ: www.habr.com

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹