乾貨 | 系統潤滑,定時清理記憶體瞭解一下
點選上方“中興開發者社群”,關注我們
每天讀一篇一線開發者原創好文
前言
記憶體總是不夠用?
快取總是被佔用?
無法實時釋放快取?
這都不是事,看完本文讓你的linux伺服器時刻保持強勁動力!!!
首先需要了解兩個東西“定時任務”與“記憶體釋放”
定時任務
命令:crontab
命令相關引數:
-e (修改使用者定時任務)
-l (列出使用者的定時任務)
-r (刪除使用者定時任務)
-i (刪除定時任務前通知使用者)
定時任務設定引數
基本格式 :
示例1
示例2
記憶體釋放
命令:
用於linux系統 (RedHat CentOS CGSL ubuntu)
sync 做同步,將所有未寫的系統緩衝區寫到磁碟中,以確保檔案系統的完整性,否則在釋放快取的過程中,可能會丟失未儲存的檔案
1 釋放頁快取
2 釋放dentries和inodes
3 釋放所有快取
實際操作
步驟:
編寫記憶體釋放的指令碼
root使用者下編寫指令碼
2.設定crontab
root使用者下執行crontab -e命令
檢視設定情況
[[email protected] home]# crontab -l
*/1 * * * * /home/clean_mem.sh
[[email protected] home]#
需要注意的是我們通過root使用者執行的crontab命令,則該定時任務的規則僅適用於root使用者,所以指令碼的屬組為root使用者
3.檢視定時任務的執行情況
定時任務的執行日誌記錄在/var/log/cron中
[root@ems001 home]# cd /var/log/
[root@ems001 log]# tail -f cron
Jul2410:37:01 ems001 CROND[19842]:(root) CMD (/home/clean_mem.sh)
Jul2410:38:02 ems001 CROND[19850]:(root) CMD (/home/clean_mem.sh)
Jul2410:39:01 ems001 CROND[19854]:(root) CMD (/home/clean_mem.sh)
Jul2410:40:01 ems001 CROND[19862]:(root) CMD (/home/clean_mem.sh)
檢視記憶體釋放情況
[
root@ems001 home]# free
total used free shared buffers cached
Mem:245549005807180187477201623212761827572
-/+ buffers/cache:397833220576568
Swap:18874364018874364
[root@ems001 home]# free
total used free shared buffers cached
Mem:24554900498033219574568162321300999016
-/+ buffers/cache:398001620574884
Swap:18874364018874364
兩次對比可以看出釋放了1G的記憶體
這樣一個自動清理記憶體的設定就完成了
4.刪除定時任務
結語
通過定時任務來執行指令碼的方法其實還有很多,比如直接使用crond服務,或者使用 at time
如crond服務,如果用的任務不是以hourly monthly weekly方式執行的,則可以直接在/etc/cron.d目錄中建立一個定時任務格式的指令碼
另外需要注意的很多人會存在疑惑的,使用 crontab -e 與 直接編輯 /etc/crontab有什麼區別
做系統級配置我們會直接配置 /etc/crontab,使用者級的則用 crontab -e,一般還是建議大家使用 crontab -e ,這樣系統也會幫著檢查我們配置的指令碼語法。
關於定時清理記憶體的方法,並不是所有伺服器都適用,對於某些需要持續申請記憶體的服務來說,不斷釋放記憶體可能會造成處理速度降低,所以使用時還需要考慮自身服務特性來進行設定
相關推薦
C#定時清理記憶體,net網頁端可以嘗試使用
-- in class definition ——在類定義中 [DllImport("KERNEL32.DLL", EntryPoint = "SetProcessWorkingSetSize", SetLastError = true, CallingConvention = CallingConven
通過批處理文件使用7zip執行備份,將1日和15日的備份再另外備份,定時清理過期備份
命令行備份 命令行清理 Batch File 批處理文件 批處理備份 7z.exe是個好東東,N多年前,當時試用了各種命令行壓縮軟件,效果都不怎麽樣,那時7zip出來不久,發現它也有命令行模式,然後試用一下,發現可用性很好,壓縮率、效率也很不錯。當時試用過winrar和rar,效果都不太好
3:檢視系統版本號及清理記憶體
1、清理前檢視記憶體的使用情況 #free -m 2、檢視記憶體大小 #cat /proc/meminfo | grep MemTotal 3、清理記憶體 echo 1 > /proc/sys/vm/drop_caches
用Unity做遊戲,你需要深入瞭解一下IL2CPP
這次我們翻譯了一篇Unity官方部落格上的文章,原文題目為AN INTRODUCTION TO IL2CPP INTERNALS ,作者是從事Unity軟體開發的Joshua Peterson。文章的看點在於,它是以IL2CPP內部開發人員的角度來講述的,所以對於開發者來說非常有參考價值。 如果
騷年,Koa和Webpack瞭解一下?
前言 日常開發中,我們用的都是使用Webpack這類構建工具進行模組化開發。 或者使用基於create-react-app和vue-cli等腳手架進行開發。 如果這個時候我們需要Node作為後端,React或者Vue作為前端,Webpack作為構建工具,那豈不是我
這想要熬夜不傷身,Goodhealth牡蠣精瞭解一下
雖然小編很不想承認,但髮際線和髮量騙不了人:身為第一批90後的小編,已經開始禿頭啦!沒完沒了的加班和應酬,掏空了小編。不過幸好朋友推薦了好健康Goodhealth牡蠣精,將小編從熬夜的苦海之中解救了出來,保持精力滿滿! 好健康Goodhealth被稱為“紐西蘭國
Python很難?不存在的,極速入門瞭解一下!
Python現在作為火熱的程式語言,另許多朋友對它趨之若鶩,但如何快速入門Python,相信很多朋友還是很迷茫的,對於初學者來說猶勝之,害怕自己學不會,不會用,那麼 這篇文章主要就是家如何快速入門python,一個簡短而全面的入門教程帶你走入Python的大門
游泳健身瞭解一下,object-c也瞭解一下
本文談不上技術文章,只是前幾天看了object-c語法,其實oc語法此前看過一次,不過紙上得來終覺淺,看過後沒怎麼實踐,後來也就忘得差不多了。這次又看了一下,然後隨便寫幾句吧。如果單純有java基礎,看oc會覺得有好多彎要轉。如果有c/c++基礎,看oc會稍微好
除了FastJson,你也應該瞭解一下Jackson(一)
在上月末的時候收到一條關於fastjson安全漏洞的訊息,突然想到先前好像已經有好多次這樣的事件了(在fastjson上面)。關於安全方面,雖然中槍的機率微小,但是在這個資訊越來越複雜的時代,安全性也變得越來越重要,就像DevSecOps的誕生,在軟體交付的整個價值流中我們也需要注重安全這方面。當然我們現在不
除了FastJson,你也應該瞭解一下Jackson(二)
## 概覽 上一篇文章介紹了Jackson中的對映器ObjectMapper,以及如何使用它來實現Json與Java物件之間的序列化和反序列化,最後介紹了Jackson中一些序列化/反序列化的高階特性。而本文將會介紹Jackson中的一些常用的(序列化/反序列化)註解,並且通過示例來演示如何使用這些註解,從
分散式一致性演算法,你確定不瞭解一下?
集中式與分散式 集中式 分散式 分散式事務 一致性協議 2PC:Two-Phase Commit二階段提交協議 3PC:Three-phase Commit 三階段提交協議 Paxos演算法 RAFT演算法 總結 集中式與分散式 集中式 就是將所有的業務都部署在
增加定時檢測linux佔用記憶體,及時清理功能
最近伺服器老是執行緩慢,使用者請求沒有反應,甚是煩惱,下面提供一下解決方案: free -m 檢視,發現記憶體跑滿了。 再 top,然後按下shift+m,也就是按記憶體佔用百分比排序,發現排在第一的程序,才佔用7.9%。 但是總記憶體大小8G,竟然有5G都被使用了, 那是
(轉)增加定時檢測linux占用內存,及時清理功能
idle 內存 檢測內存 一定的 top 服務 清理內存 mon attribute 增加定時檢測linux占用內存,及時清理功能 原文:http://www.voidcn.com/article/p-wnmannom-boa.html free -m 查看,發現內存跑滿了
學習分散式系統,這些術語你瞭解嗎?
對於剛進入區塊鏈行業的小白同學來說,一切都顯得比較陌生,很多概念性質的東西理解起來也比較吃力,本文和大家分享的是區塊鏈分散式系統中常見的一些專業分類,一起來看看吧,希望對大家有所幫助。 1. Failure models 失效模型 機器故障:當機器(節點)出現故障時,共識協議就用於解決機器
kickstart自動安裝指令碼;系統延時定時任務的at,crobtab,檔案方式設定定時任務;
kickstart自動安裝指令碼 前提條件:掛載好yum,開啟httpd服務,配置dhcp服務 yum install -y system-config-kickstart system-config-kickstart 點Add 點 Add Netwo
想要真正瞭解WMS(倉庫管理系統),首先要知道這些
WMS是Warehouse Management System的縮寫,翻譯即倉庫管理系統。通過WMS系統可以將入庫、出庫、調撥、盤點、批次管理、庫存預警等倉庫內的作業流程進行全方位的管理。應用WMS系統進行倉庫管理可以有效控制庫內的作業流程,對成本進行全面的掌控。同時WMS系統還可以同企業的其他管理
kafka 系統日誌定時清理
每天定時清理kafka叢集server端3天前的系統日誌 寫清理指令碼,: 在/data1/kafka/kafka 目錄下新建檔案 auto-delete-kafka-3days-ago-log.sh 內容如下: #!/bin/sh find /data1/kafka/kafka/
iOS開發之MAC的記憶體清理,Xcode清理
此文章僅適用於適用於使用Xcode的開發者。 長期不清理Xcode中的一些檔案你會發現自己的mac硬碟越來越小,而且是這個其他佔了絕大部分的硬碟,在網上搜索了很多辦法都沒找到如何清理這些其他 後來來來回回在資料夾中找發現~/Library/Developer/Xcode這個Xcode資料夾大的驚
(一)solr 7.31版本window系統全程安裝搭建,涵蓋專案用到的大部分配置,常用查詢,solr多條件查詢、排序,配置資料庫,定時同步,全量與增量更新,使用solrJ在java程式進行增刪改查
前言:由於專案最近在做淘寶客商品資訊查詢這一塊,做搜尋引擎,離不開全文搜尋伺服器,我這裡選擇了solr。solr的好處可以自行百科,這裡主要是講解技術。這篇文章主要講解window的安裝和使用。若大家感興趣或者專案用到,希望你能跟著我的步驟進行下去,如果遇到問題,可以後續看下我在最底下的問題