zoukankan      html  css  js  c++  java
  • 文件缓存tmpfs简单使用

    文件缓存tmpfs
    基于内存的文件系统,直接使用ram(物理内存)+swap(交换分区)

    tmpfs缓存文件系统
    /dev/shm共享内存
    动态的使用虚拟内存,文件删除后释放内存

    特性:
    1.动态空间使用和动态变化
    2.速度
    3.没有持久性(重启失效)

    主要应用场景:
    1.缓存 squid nginx
    2.php session /tmp
    3.存放socket
    4.自定义缓存

    1.将文件拷贝到/dev/shm目录中,发现/dev/shm使用率变化了

    [root@node1 ~]# df -Th
    Filesystem Type Size Used Avail Use% Mounted on
    /dev/mapper/centos-root xfs 30G 3.9G 27G 13% /
    devtmpfs devtmpfs 901M 0 901M 0% /dev
    tmpfs tmpfs 912M 0 912M 0% /dev/shm
    tmpfs tmpfs 912M 8.8M 903M 1% /run
    tmpfs tmpfs 912M 0 912M 0% /sys/fs/cgroup
    /dev/sda1 xfs 297M 122M 176M 41% /boot
    /dev/mapper/centos-data xfs 40G 224M 40G 1% /data
    tmpfs tmpfs 183M 0 183M 0% /run/user/0
    
    [root@node1 ~]# cp jdk-8u131-linux-x64.gz /dev/shm
    [root@node1 ~]# df -Th
    Filesystem Type Size Used Avail Use% Mounted on
    /dev/mapper/centos-root xfs 30G 3.9G 27G 13% /
    devtmpfs devtmpfs 901M 0 901M 0% /dev
    tmpfs tmpfs 912M 177M 735M 20% /dev/shm
    tmpfs tmpfs 912M 8.8M 903M 1% /run
    tmpfs tmpfs 912M 0 912M 0% /sys/fs/cgroup
    /dev/sda1 xfs 297M 122M 176M 41% /boot
    /dev/mapper/centos-data xfs 40G 224M 40G 1% /data
    tmpfs tmpfs 183M 0 183M 0% /run/user/0
    
    [root@node1 ~]# free -m
    total used free shared buff/cache available
    Mem: 1823 640 72 185 1110 768
    Swap: 4095 0 4095

    2.删除后发现内存也变了

    [root@node1 ~]# rm -f /dev/shm/jdk-8u131-linux-x64.gz 
    [root@node1 ~]# free -m
    total used free shared buff/cache available
    Mem: 1823 641 248 8 933 945
    Swap: 4095 0 4095

    创建文件,并划分为tmpfs文件系统

    [root@node1 ~]# mkdir /mnt/data
    [root@node1 ~]# mount
    mount mount.fuse mountpoint 
    [root@node1 ~]# mount -t tmpfs tepfs /mnt/data/
    [root@node1 ~]# df -h
    Filesystem Size Used Avail Use% Mounted on
    /dev/mapper/centos-root 30G 3.9G 27G 13% /
    devtmpfs 901M 0 901M 0% /dev
    tmpfs 912M 0 912M 0% /dev/shm
    tmpfs 912M 8.8M 903M 1% /run
    tmpfs 912M 0 912M 0% /sys/fs/cgroup
    /dev/sda1 297M 122M 176M 41% /boot
    /dev/mapper/centos-data 40G 224M 40G 1% /data
    tmpfs 183M 0 183M 0% /run/user/0
    tepfs 912M 0 912M 0% /mnt/data

    3.指定tmpfs文件系统大小为50M

    [root@node1 ~]# mkdir /mnt/data1
    [root@node1 ~]# mount -t tmpfs -o size=50m tmpfs /mnt/data1
    [root@node1 ~]# df -h
    Filesystem Size Used Avail Use% Mounted on
    /dev/mapper/centos-root 30G 3.9G 27G 13% /
    devtmpfs 901M 0 901M 0% /dev
    tmpfs 912M 0 912M 0% /dev/shm
    tmpfs 912M 8.8M 903M 1% /run
    tmpfs 912M 0 912M 0% /sys/fs/cgroup
    /dev/sda1 297M 122M 176M 41% /boot
    /dev/mapper/centos-data 40G 224M 40G 1% /data
    tmpfs 183M 0 183M 0% /run/user/0
    tepfs 912M 0 912M 0% /mnt/data
    tmpfs 50M 0 50M 0% /mnt/data1

    4.重新设置tmpfs文件系统大小为100M

    [root@node1 ~]# mount -o remount,size=100m /mnt/data
    [root@node1 ~]# df -h
    Filesystem Size Used Avail Use% Mounted on
    /dev/mapper/centos-root 30G 3.9G 27G 13% /
    devtmpfs 901M 0 901M 0% /dev
    tmpfs 912M 0 912M 0% /dev/shm
    tmpfs 912M 8.8M 903M 1% /run
    tmpfs 912M 0 912M 0% /sys/fs/cgroup
    /dev/sda1 297M 122M 176M 41% /boot
    /dev/mapper/centos-data 40G 224M 40G 1% /data
    tmpfs 183M 0 183M 0% /run/user/0
    tepfs 100M 0 100M 0% /mnt/data
    tmpfs 50M 0 50M 0% /mnt/data1

    5.如果希望重启后还生效,需要写入/etc/fstab,否则可能系统无法正常启动
    tempfs /mnt/data tmpfs size=50M 0 0

  • 相关阅读:
    深入理解java垃圾回收算法
    JVM类加载机制与对象的生命周期
    JVM 类加载机制详解
    从经典面试题看java中类的加载机制
    Intellij IDEA常用快捷键介绍 Intellij IDEA快捷键大全汇总
    Java HashMap 如何正确遍历并删除元素
    记录Java的垃圾回收机制和几种引用
    浅谈jvm中的垃圾回收策略
    Mysql常见四种索引的使用
    Java虚拟机垃圾回收(三) 7种垃圾收集器
  • 原文地址:https://www.cnblogs.com/reblue520/p/6858138.html
Copyright © 2011-2022 走看看