真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何進行SWAP知識的理論分析-創(chuàng)新互聯(lián)

如何進行SWAP知識的理論分析,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

創(chuàng)新互聯(lián)專注于海安網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供海安營銷型網(wǎng)站建設,海安網(wǎng)站制作、海安網(wǎng)頁設計、海安網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)公司服務,打造海安網(wǎng)絡公司原創(chuàng)品牌,更為您提供海安網(wǎng)站排名全網(wǎng)營銷落地服務。

Linux中的交換空間在物理內(nèi)存量(RAM)已滿時使用。

如果系統(tǒng)需要更多內(nèi)存資源,并且RAM已滿,則內(nèi)存中的非活動頁面將移動到交換空間。

雖然交換空間可以幫助具有少量RAM的計算機,但不應將其視為更多RAM的替代品。

交換空間位于硬盤上,硬盤的訪問時間比物理內(nèi)存慢。交換空間可以是專用交換分區(qū)(推薦)、交換文件或交換分區(qū)和交換文件的組合。



Linux內(nèi)核為了提高讀寫效率與速度,會將文件在內(nèi)存中進行緩存,這部分內(nèi)存就是Cache Memory(緩存內(nèi)存)。即使你的程序運行結束后,Cache Memory也不會自動釋放。這就會導致你在Linux系統(tǒng)中程序頻繁讀寫文件后,你會發(fā)現(xiàn)可用物理內(nèi)存變少。當用戶提交程序,然后產(chǎn)生進程,在機器上運行,機器會判斷當前物理內(nèi)存是否還有空閑允許進程調(diào)入內(nèi)存運行,如果有那么則直接調(diào)入內(nèi)存進行運行;如果沒有,那么會根據(jù)優(yōu)先級選擇一個進程掛起,把該進程交換到swap中等待,該程序占用的物理內(nèi)存中的一部分空間就被釋放出來了,然后把新的進程調(diào)入到內(nèi)存中運行。等到那個掛起程序要運行時,再從Swap分區(qū)中恢復保存的數(shù)據(jù)到內(nèi)存中。
但是并不是所有從物理內(nèi)存中交換出來的數(shù)據(jù)都會被放到Swap中(如果這樣的話,Swap就會不堪重負),有相當一部分數(shù)據(jù)被直接交換到文件系統(tǒng)。例如,有的程序會打開一些文件,對文件進行讀寫(其實每個程序都至少要打開一個文件,那就是運行程序本身),當需要將這些程序的內(nèi)存空間交換出去時,就沒有必要將文件部分的數(shù)據(jù)放到Swap空間中了,而可以直接將其放到文件里去。如果是讀文件操作,那么內(nèi)存數(shù)據(jù)被直接釋放,不需要交換出來,因為下次需要時,可直接從文件系統(tǒng)恢復;如果是寫文件,只需要將變化的數(shù)據(jù)保存到文件中,以便恢復。當物理內(nèi)存和swap都被使用完那么就會報錯out of memory。


Swap被使用的日常例子
在使用Windows系統(tǒng)時,可以同時運行多個程序,當你切換到一個很長時間沒有理會的程序時,會聽到硬盤“嘩嘩”直響。這是因為這個程序的內(nèi)存被那些頻繁運行的程序給“偷走”了,放到了Swap區(qū)中。因此,一旦此程序被放置到前端,它就會從Swap區(qū)取回自己的數(shù)據(jù),將其放進內(nèi)存,然后接著運行。


Swap空間的作用
當系統(tǒng)的物理內(nèi)存不夠用的時候,就需要將物理內(nèi)存中的一部分空間釋放出來,以供當前運行的程序使用。那些被釋放的空間可能來自一些很長時間沒有什么操作的程序,這些被釋放的程序被臨時保存到Swap空間中,等到那些程序要運行時,再從Swap中恢復保存的數(shù)據(jù)到內(nèi)存中。從這也可以看出swap扮演了一個非常重要的角色,就是暫存被換出的進程。根據(jù)這種換入和換出,實現(xiàn)了內(nèi)存的循環(huán)利用,讓用戶感覺不到內(nèi)存的限制。


Swap分區(qū)對性能的影響
正方:Swap不能代替物理內(nèi)存用!因為swap畢竟還是以磁盤來偽裝成內(nèi)存,交換的操作是磁盤IO的操作而不是內(nèi)存的load與store操作。
反方:正常的情況即物理內(nèi)存還夠的情況下,很少使用swap內(nèi)存區(qū),物理內(nèi)存不夠的情況下,swap空間上存儲的也是系統(tǒng)不會頻繁使用的數(shù)據(jù),調(diào)用的次數(shù)非常少,性能問題幾乎可以忽略,物理內(nèi)存極度不夠的話,性能問題與Swap分區(qū)有啥關系,這時你加多數(shù)Swap分區(qū)也無濟于事,只能加物理內(nèi)存。



使用多大比例內(nèi)存之后開始使用swap
可在/proc/sys/vm/swappiness文件中進行調(diào)整,默認是60。該參數(shù)可以從0-100進行設置。0就是大限度使用內(nèi)存,盡量不使用swap;100就是積極使用swap。A low value means the kernel will try to avoid swapping as much as possible where a higher value instead will make the kernel aggressively try to use swap space

臨時修改swappiness參數(shù)的方法(不能直接vi /proc/sys/vm/swappiness ),重啟后失效
方法1:echo 60 >/proc/sys/vm/swappiness
方法2:sysctl vm.swappiness=60

永久修改swappiness參數(shù)的方法,重啟后生效
修改/etc/sysctl.conf里面的vm.swappiness,可以直接vi /etc/sysctl.conf



開啟關閉swap交換分區(qū)
swapoff /dev/dm-1
swapon /dev/dm-1

swap交換分區(qū)不是tmpfs對應的/dev/shm分區(qū),而是swapon -s對應的Filename的分區(qū)
[root@localhost ~]# swapon -s
Filename                                Type            Size    Used    Priority
/dev/dm-1                               partition       4194296 42352   -1
[root@localhost ~]# ll /dev/mapper/VolGroup-lv_swap
lrwxrwxrwx 1 root root 7 6月  27 10:34 /dev/mapper/VolGroup-lv_swap -> ../dm-1
[root@localhost ~]# fdisk -l|grep swap
Disk /dev/mapper/VolGroup-lv_swap: 4294 MB, 4294967296 bytes
[root@localhost ~]# ll /dev|grep dm-1
brw-rw----   1 root disk    253,   1 6月  27 10:34 dm-1
[root@localhost ~]# df -h
Filesystem                    Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root   35G  3.6G   30G  11% /
tmpfs                         3.9G   72K  3.9G   1% /dev/shm
/dev/sda1                     485M   39M  421M   9% /boot
/dev/sdb1                     197G  100G   87G  54% /db



Swap大小如何確定
CENTOS官網(wǎng)采用如下公式:
M = Amount of RAM in GB
S = Amount of swap in GB,
then If M < 2, S = M *2 Else S = M + 2。

ORACLE的官方文檔推薦
RAM                        ==>Swap Space
Up to 512 MB               ==>2 times the size of RAM
Between 1024 MB and 2048 MB==>1.5 times the size of RAM
Between 2049 MB and 8192 MB==>Equal to the size of RAM
More than 8192 MB          ==>0.75 times the size of RAM



查看Swap內(nèi)存的命令
free和swapon -s和cat /proc/swaps三者都可以看到大概的Swap信息
swapon -s和cat /proc/swaps還可以看到Swap對應的磁盤信息
vmstat可以看到間隔時間內(nèi)Swap in、Swap out的大小
[root@localhost ~]# free -k|grep Swap
Swap:      4194296      42352    4151944
[root@localhost ~]# swapon -s
Filename                                Type            Size    Used    Priority
/dev/dm-1                               partition       4194296 42352   -1
[root@localhost ~]#  cat /proc/swaps
Filename                                Type            Size    Used    Priority
/dev/dm-1                               partition       4194296 42352   -1



[root@localhost ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          7872       6580       1292          0        104       1037
-/+ buffers/cache:       5339       2433
Swap:         4095       3241       854

第二行
total = used + free

第三行
(-buffers/cache) used內(nèi)存數(shù):第一部分Mem行中的 used - buffers - cached (反映的是被程序實實在在用掉的內(nèi)存)
(+buffers/cache) free內(nèi)存數(shù): 第一部分Mem行中的 free + buffers + cached (反映的是可以挪用的內(nèi)存總數(shù))

第四行
指SWAP交換分區(qū)

1)如果沒有swap:
swap用了3241M,空閑的物理內(nèi)存是2433M,也就是說,如果沒有swap,內(nèi)存已經(jīng)爆了。
2)swap并沒有影響到性能:
系統(tǒng)還有足夠的物理內(nèi)存(2433M),換句話說,現(xiàn)在swap里存儲的還是不常使用的數(shù)據(jù)(也就是swap正在發(fā)揮正常的作用)。


[root@localhost ~]# vmstat 3
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0  42352 1322484 209984 6182296    0    0    17    21    4    3  0  0 100  0  0
 0  0  42352 1322484 209984 6182296    0    0     0     0   42   34  0  0 100  0  0
 0  0  42352 1322484 209984 6182296    0    0     0     0   38   36  0  0 100  0  0
 0  0  42352 1322484 209984 6182296    0    0     0     0   61   43  0  0 100  0  0
 0  0  42352 1322484 209984 6182296    0    0     0     0   34   33  0  0 100  0  0

vmstat 3表示每3秒收集一次
si表示當前(三秒鐘之內(nèi))交換回內(nèi)存(Swap in)的總量,單位為kbytes;
so表示當前(三秒鐘之內(nèi))交換出內(nèi)存(Swap out)的總量,單位為kbytes。 

看完上述內(nèi)容,你們掌握如何進行SWAP知識的理論分析的方法了嗎?如果還想學到更多技能或想了解更多相關內(nèi)容,歡迎關注創(chuàng)新互聯(lián)-成都網(wǎng)站建設公司行業(yè)資訊頻道,感謝各位的閱讀!


標題名稱:如何進行SWAP知識的理論分析-創(chuàng)新互聯(lián)
本文鏈接:http://weahome.cn/article/dsdddj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部