linux rsync 文件備份

2011年8月12日 沒有評論

rsync可以讓兩個目錄的內容一致,它同步只會同步有更新過的文件,減少傳輸量。可以是本機上的兩個目錄,也可以是本機的目錄同步到服務器上,還可以是把服務器上的目錄同步到本機上。

基本命令是 rsync 命令的參數 源目錄 目的目錄

rsync可以基于ssh協議來做,這樣就省去了很多配置rsync server的麻煩,如果兩個機器已經實現ssh無密碼登陸,那么rsync就會提示輸入密碼,還有一種是通過密鑰文件來實現免密碼,例如下面

1、rsync -vzrtopg –progress -e ssh –delete 用戶名@服務器IP:/var/www/dirA/ /var/bak/

2、rsync -vzrtopg –progress -e “ssh -i /path/pwd.pem” –delete 用戶名@服務器IP:/var/www/dirA/ /var/bak/

就是把服務器上的dirA目錄同步到本地的/var/bak目錄下,其中方法1是用戶已經做了ssh免密碼登陸,方法2是通過密鑰(存放在/path 下的pwd.pem文件)來同步

分類: Linux 標簽: , , ,

nginx+php-fmp 內存不釋放

2011年8月11日 沒有評論

由于服務器只有600M的內存,上面跑了一個并發并不是很大的php應用,當運行一段時間后,發現內存不斷增長,其中一部分是PageCache的增長, 這個可以通過echo 3 > /proc/sys/vm/drop_caches 命令來進行有效的釋放,另外一個應用內存的增長,且無法釋放,通過top命名(輸入命名后按m鍵可按進程占用內存大小的排序)查看,發現大部分內存都被 php-fpm 占用,網上查了一下,大概的意思是說,處理每個php請求完成后,php-fpm會回收內存,但不會釋放給操作系統,從而導致大量的內存被php-fpm 占用。網上也提到解決方法,就是調整php-fpm.conf中的pm.max_requests值,pm.max_requests的作用是發送多少個 請求后會重啟該線程,從而使其釋放占用的內存,默認0,即決不重啟。在我的應用把該值設置為250,觀察一段時間后,發現還是有好幾個php-fpm占用 內存的比例是2.8%左右,效果不理想,可能的原因是請求量大,還是無法達到這個閥值,將其設置為10的時候,發現php-fpm是會不斷的重啟的。個人 感覺這樣配置不是太好,所有還是把這個值置為250,同時用一個腳本來進行殺掉php-fpm,從而釋放他占用的內存,另外如果系統負載巨大,重啟會導致 cpu的使用率飆升。腳本如下:
#!/bin/bash
log=/home/www/scripts/php-fpm.log
echo `date “+%F %H:%M:%S”` >> $log
for PID in `ps aux|grep php-fpm|grep -v grep|awk ‘{if($4>=1)print $2}’`
do
kill -9 $PID
echo $PID >> $log
done

可以把腳本加到crontab中讓其定期執行.

另外記錄幾個長用的命令:
1、按順序列出內存占用率的進程?? ? ps -A –sort -rss -o comm,pmem,pcpu |uniq -c |head -15
2、指令vmstat可以監控內存使用情況,作為對內存監控,我們比較關心swpd、free、si、so。一般系統不繁忙的狀態下,我們看到swpd,so的值不會持續很高,經常為0
3、通過pmap來查看進程占用內存的詳細情況,例如,pmap 進程號

本 文參考了:http://blog.csdn.net/zouyongjin/article/details/6642157和http: //www.opsers.org/linux-home/server/php-fpm-on-analysis-of-system-resources.html

分類: Linux 標簽: , ,

無覓相關文章插件,快速提升流量

30选5怎么中奖