前言介绍

  我们都知道,对于单台服务器来说,除了CPU,内存就是我们存储数据最快的设备。

  如果可以把数据直接存储在内存中,对于性能的提升就不言而喻了。

  那么我们先来讲讲如何使用内存来存储文件。

   

  首先,我们先来看看操作系统,在你的系统中执行df –h查看系统的磁盘使用。

[root@svn-sever-01 ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3       9.1G  1.5G  7.1G  18% /
tmpfs           937M     0  937M   0% /dev/shm
/dev/sda1       190M   32M  149M  18% /boot

  你会发现除了我们正常的磁盘分区挂载点外,系统还有一种叫做devtmpfs的文件系统,和多个tmpfs。

  那么什么是tmpfs呢?


  tmpfs简介

  tmpfs是Linux/Unix系统上的一种基于内存的文件系统。

  tmpfs可以使用您的内存或swap分区来存储文件。

  在Redhat/CentOS等linux发行版中默认大小为物理内存的一半。

  例如上面的案例中,我执行df -h的服务器是64G内存。

  首先我们要说明,tmpfs 既可以使用物理内存,也可以使用交换分区,因为tmpfs使用的是 “虚拟内存”。

  Linux内核的虚拟内存同时来源于物理内存和交换分区,主要由内核中的 VM 子系统进行调度,

  进行内存页和SWAP的换入和换出操作,tmpfs 自己并不知道这些页面是在交换分区还是在物理内存中。