import os
import socket
def check_the_memory():
ip_list =
hostname = socket.gethostname() #獲取計算機名稱
ip_adress = socket.gethostbyname(hostname)
# print('ip_adress = ', ip_adress)
for k, v in ip_list.items():
if ip_adress == v:
ip_adress = k + ' -- ' + v
memory_list = os.popen('ps -aux | grep python3').readlines()
# print('memory_list = ', memory_list)
for m in memory_list:
# memory_data =
memory_data = [mm for mm in m.split(' ') if mm]
if float(memory_data[3]) > float(75):
# 殺死splash服務
os.popen('kill -9 %s' % int(memory_data[1]))
# 重新啟動docker和splash
os.system("service docker restart")
os.system(r"(docker run -p 8050:8050 scrapinghub/splash &)")
shell_time = time.strftime('%y-%m-%d %h:%m:%s', time.localtime(int(time.time())))
# 查詢重啟後占用記憶體及cpu
time.sleep(10)
memory_result = os.popen('ps -aux | grep python3').readlines()
for m_r in memory_result:
memory_data_result = [mm for mm in m_r.split(' ') if mm]
break
# shell_params = '1'
info = f'''
資訊:kill:
重啟前占用記憶體:,
重啟前占用cpu:,
重啟結果:'已重啟',
重啟後占用記憶體:,
重啟後占用cpu:,
'''send_email(info)
break
linux上檢測服務占用記憶體並自動重啟
import os import socket def check the memory ip list hostname socket.gethostname 獲取計算機名稱 ip adress socket.gethostbyname hostname print ip adress ip ad...
linux 記憶體占用情況檢視並優化
1.使用top 檢視記憶體的占用情況,該命令類似於windows系統的記憶體管理器,然後鍵入 m 命令根據記憶體的占用情況降序排列,看看記憶體主要由哪些程序占用。p 是cpu占用情況降序排列 2.再使用free m卻還有6.1g被占用 記憶體總共8g 仔細觀察後 發覺是cache 占用了大量記憶體。...
檢測並刪除被占用的檔案
在作業系統使用過程中,經常會遇到一些檔案被某些程式占用而無法被刪除的事情。這個時候,如果是手動進行的刪除可能影響還小,因為有很多方式可以解除引用,比如借助於其它的某軟體工具。但是在實際程式設計中,如果給乙個檔案重新命名,公升級的時候替換掉原來老的檔案等等就成了乙個致命的缺陷,由於一些不必要操作或其它...